Good thing I read John T's warnings on this several times, I just had to jump through some hoops to stay within the "Web object dynamic creation guidelines" as outlined above. Something along the lines of

(paraphrased) "Thou shalt only create dynamically created objects whilst all other objects in the application are being created. If thou should venture to deviate from this path and create them only when you need them or when you have enough knowledge to create them, there will be many obstacles thrown in your path and a pox shall be visited on the operation of your Webapp."
In my situation I'm pulling data from a database and wouldn't know how many on-screen objects I'd need. I tried creating the various buttons and labels during onLoad and while on the surface it seemed to work - they all showed as expected - attempting to deal with them threw up very odd errors about the object name not being recognized. Obviously they weren't in the object tree where expected. And I couldn't figure a way around it using any kind of object handle either.

So a word to the wise... DDT! (For the unknowing, Don't Do That.) Create all possible objects up front, put the object handles in an array, set them to non rendered and later when you know what you need, use the handles in the array to set all of the various properties. And render only what you need. Screen positioning and troubleshooting is easy, simply leave them rendered until you're satisfied.