Complicated redirection hierarchies break IncludeInferiors rendering
Composite means each window can have its own pixel storage if it wants. If you draw with an IncludeInferiors GC to a redirected parent window, with a visible child that is also redirected, rendering will draw through to the parent window's backing pixmap, but will not also be applied to the child's pixmap.
This is not an especially big deal, because this kind of complicated redirection hierarchy is not common, and neither is IncludeInferiors rendering. But it is, arguably, a bug. Fixing it doesn't seem that complicated? You can check at ValidateGC
whether there are any redirected children (and the GC has IncludeInferiors set), and if so hook up a "complicated" set of GC ops. In those ops you re-dispatch the draw to each redirected child window (through a new, non-IncludeInferiors GC), translating coordinates as appropriate, and walking the tree from childmost to rootmost.
I recommend waiting to fix this until we find an app that requires it.