Existe uma boa solução para este problema. O procedimento a seguir dirá ao WPF para usar o tema do Windows Vista / 7 em vez do Windows Basic (para os controles).
O motivo pelo qual o uso de um novo tema causa esses problemas é que o wpf descobre qual tema é definido, verificando o nome do arquivo do estilo visual atualmente ativado. Se o nome é "aero.msstyles", ele usa o tema aero. Se é "luna.msstyles", ele vai um passo além e verifica o esquema de cores atual para afinar as cores (NormalColor, Metálico, Homestead são os esquemas de cores para o Windows XP, o Windows Vista vala o conceito de esquema de cores totalmente a favor de janelas aero). Há também um tema embutido no wpf para "royale.msstyles". Se o arquivo de tema tiver um nome que o wpf não reconheça, ele apenas usará o tema básico do Windows.
A solução alternativa? Renomeie seu estilo visual de "{whatever} .stystyles" para "aero.msstyles" e modifique os arquivos ".theme" associados no bloco de notas para dar conta do novo nome (observe que agora você só pode aplicar o estilo visual com um tema Arquivo). O WPF agora mostra o estilo Windows Vista em vez do Windows Basic; -).