Rex-
I'm strictly pre-newbie at design patters :), so forgive me if this question is idiotic: but don't you (and the combinded object) know what order the decorators are instantiated in given the "this.oRef.oRef.oRef.etcetcetc" hierarchy?
Also, is what you are discussing essentially the chain of responsibility pattern? So that for example this.DoSomething() would look at the message (?) to see if it can handle the task. If not it calls:
this.oref.DoSomething(this.oRef)?
I'm struggling with these ideas, so I appreciate your patience. (And YOU posted looking for help :)