Note: you MUST add a reference to PresentationFramework.Aero.
To avoid any negative impact from System Themes, I update the ResourceDictionary of the IParents (in their Initialize method) to the
theme by default to assure the structure of the IParent will be consistent (NOT "lookless"). The premise here is to have a set, well-defined chain of UI Elements to work with:
Uri uri = new Uri("/PresentationFramework.Aero;component/themes/Aero.NormalColor.xaml", UriKind.Relative);
source.Resources.MergedDictionaries.Add(Application.LoadComponent(uri) as ResourceDictionary);