Thank you for the clarification of the question.
Here is the CodeProject article for you to learn about related techniques:
These two CodeProject articles can also be useful:
WinForms Form Skin
I would advise you to avoid such deep customization, as it requires P/Invoke and hence kills platform compatibility which you could have with pure FCL