Although I assume your original question is about Custom Elements in general, I've put together an example using Polymer which tries to replicate the tree ordering you're interested in:
http://jsbin.com/yisaqe/3/edit
In this case, we see that the lifecycle callbacks are executed from top to bottom (one, two, three) rather than depth first (three, two, one):
If you remove the entire tree later on, the detached callbacks are similarly executed in a top to bottom order (one, two, three - see console)
http://jsbin.com/mejija/1/edit
I assume that this is consistent between the polyfill and the spec's intended behaviour, but I haven't been able to ascertain from the spec whether this is meant to differ. I hope that at least these proof of concepts are useful.