Thank you, thank you very much rbaprog!!!
Here I will share what I have found and hope this will be helpful.
DrawThemeParentBackground works fine on Delphi7 and it is quite
fast. I made some experiments and it has more functoinality than it
is described (for example dc can be any dc, you are not bound to the
control).
On Delphi6 it gives me "Access violation" but for now I would leave
it as it is.
The only drawback is that it works with WinControls only.
CopyRect works fine, but as you said it doesn't take a snapshot
under your control, which is the primary goal.
I found 2 other oportunity:
1. Parent.PaintTo - works fine.
The drawback is that it repaint the control and its child controls
(if you have many and complex controls it will be slow).
And also it tries to draw your control. There is a danger of "Stack
overflow".
2. In Rx library there is routine in VCLutils - CopyParentImage. It
works almost the same as PaintTo, but doesn't draw itself and it is
specialized for TGraphicControls.