Check out
this article, which has a solution for making transparent controls that can be redrawn when the background changes (if you are layering your buttons over video, this could be useful). Sounds like you already know how to make owner drawn buttons, but just in case you don't, read
this page. Also,
"Transparent Button with Region and Anti-Aliased Edges" may or may not be what you're looking for, already built.
"An easy way to create transparent button" is another example, but it apparently has memory leaks and doesn't redraw when the control is moved (maybe you can fix that up by reading the above article that redraws when the background is updated).