I want to improve the look of my program by using a custom created theme like this: http://www.mpgh.net/forum/33-visual-basic-programming/492570-biesis-vb-net-theme-archive.html
This really depends on what your custom controls are. Based on previous experience with Devexpress, for example, replacing control class names, as suggested by @Bjorn, will only work for some of their controls. Others will not behave expected, because they rely on sub-controls, generated automatically by the designer, whenever a control is placed on the form.
The best approach as I see it now, would be to redesign your form with placeholder controls (no specific binding to any UI framework), then replace, or embed the actual controls at runtime. You should be most flexible this way, and even able to inject sub-controls (to solve the problem with some Devexpress controls).