api32ならウィンドウの外見をwindowsが用意するもの以外で設定可能だったりリュージョンで矩形以外も作れるけど
.NETは知らん