oln=CREATEOBJECT("label")
oln.Top=1.5
?oln.Top
Not quite what you'd expect, eh? Try with other non integer values, even 1.0.
It seems as if the controls instantiated this way, without a parent, accept decimal values as foxels and recalculate them into pixels immediately.
This may be as old as 3.0, and I guess this is 56th time someone publishes it as a discovery :). Took me only 20 minutes to fix my code around this.