I just want to add one sad truth about all this: A customer of us configures group policies to take away control from users in many system settings, unfortunately also about the themes. So indeed users do not always have the chance to configure their pc as they need. And this is a severe administrative error, if you ask me.
And while I always only thought coloring a button is a sample task you'd never really be asked to do, I once had to let a button be highlighted with a strong blue, instead of the light shade of blue XP adds to a focused command button in it's default theme. While that is a bad design of the XP theme, that really would have been a job of theme configuration and not of my programming.
Tamar, I never got the idea to bind to a themes change event, partially perhaps, because Windows handles redrawing all application forms anyway, and you don't have to do much, but if you add your own coloring, it gives you the best opportunity to give them the same base color as the theme and compute some colors in the same tone or for example calculate if white or black gives the best contrast.
And Joey, I hope to have shown, that playing by the rules doesn't take away so much freedom from you, even if you can argue, that these examples also break UI rules. A rule of thumb would always be, an application fits into the general UI. And if you say nobody does, to me that's still an argument to not follow the majority.
In the end there always will be some compromise between fully customizable looks and strictly defining what makes sense and is corporate identity or following other design guidelines. If you want the best UX, go Mac, Apple is very much more restrictive about that, and the result is they have a unique selling proposition.
Bye, Olaf.