That makes sense to change it in the properties after creation but on creation, the 'entity' itself (the MLeader) will be placed at the current ucs therefore all it's geometry will be placed at that ucs also, including MText. So, if you set the UCS of the MLeader object as you create it everything it owns should follow.
Another option maybe to set/return the UCS via sysvars in your routine.