I was in a code review session and was getting a constant problem with the default (generic) theme for a control. The file generic.xaml was correctly located in the /Themes folder and the Assembly attribute ThemeInfo was also set. But still the control was not showing up !
Problem : generic.xaml had a build action other than Page.
Solution : Make the build action of generic.xaml as Page
I am not sure how it got changed in the first place but if you ever run into a problem with blank custom controls, do check the build action of generic.xaml.
It must be Page.
Of course you also need to make sure you have a generic.xaml in /Themes and it has a Style for your custom control. Also your AssemblyInfo.cs file needs to have a ThemeInfo assembly attribute set.

[...] Josh Smith on Binding to (Validation.Errors)[0] without Creating Debug Spew Pavan Podila notes Generic.xaml must have a build action of Page Rudi Grobler documents Learning PRISM – Getting Started… and Validation in WPF using [...]