Docking - not so trivial

I have spent many days now trying to get a program working properly
using the new (to me) docking features of D4.  I am using the
automatic docking features, to simplify things a bit (ha, ha, ha), but
I am getting VERY weird results.  For example, if I try to set the
clientwidth of one of the docksite panels, very often, nothing
changes; although I can't see why not.  Also sometimes
floater.manualdock works, and sometimes nothing happens. (perhaops it
docked but is invisible, how would I know?).

Anyway, after many days, I've concluded that guessing and trying
things is just not the way to get the job done, but the online
documentation is virtually mute on the subject.  The example requires
deriving new classes, which eliminates the opportunity of designing my
floating panels on screen.

So my question is:  is there a good source of information about how
the docking modules really work and what the "correct" way to use them