WordPress is a great blogging platform, and it makes a great CMS if you really know your stuff, but using it as anything beyond the pre-created functionality (including themes) is problematic, confusing and very procedural. WordPress needs to separate themes from the WP core a little bit more.
I propose rewriting the WordPress theme system using XSL. This would provide a standardized, compliant system that anyone who knows XSL can use to create their own WordPress theme, without worrying about learning the ins and outs of WordPress's PHP function names, nomenclature, objects, methods, or classes.
This would, of course, be backwards-compatible with current themes. There are a few approaches on how to deal with that. I think that an XSL-based theme system is what WordPress needs. Thoughts?