From your description I would think about having a base View class that has the ability of showing itself in a window or in an existing control.
So, when you load/unload a view you can tell the View to either load itself into some container (as it presumably does now) or to pop itself up into a window.
I do something similar in my MVVM articles
here[
^]