It sounds like what you want to do is create a different Generic.xaml (theme) Style for a control but that isn't something that's intended for built-in controls. You might be able to do something like create an alternate theme assembly with your Styles that you can fool WPF into loading (i.e. PresentationFramework.Aero.dll) or subclassing controls you want to replace templates on. Before going down that road you should really evaluate whether it's worth the time investment. Anything you might be able to get to work is going to add complexity and be a lot of extra work just to change your local default Style declarations from
<Style TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
to
<Style TargetType="{x:Type Button}">
As far as ignoring themes, there's not much you can control as far as the automatic selection process. The standard way to do it is to copy the default Style from a specific theme into your App.xaml as your application default Style and modify as necessary but that obviously creates the situation that you're trying to get away from.