Um die nebenfrage zu Beantworten: Freilich geht WPF mit Prism

Sehr gut sogar, da Prism ein paar nette Sprachfeatures bietet die im Gegensatz zu C# eine Menge Code sparen können (Interface delegation z.B.).
Dennoch ist das Post in der falschen Sparte. Skinning einer Anwendung ist kein Sprachenthema.