I am trying to prepare myself for being challenged with the question:
"Why cant we just implement the presentation model in the code behind?"
In fact I have worked on a project where we used a Presentation Model that was implemented in the code behind. It worked fairly well, we were even able to run unit tests on it. Yes you have a dependency on WPF in your unit tests... but it does work!
What then, are the main drawbacks of using code behind?
I do prefer the idea of an independent ViewModel (MVVM) but at the moment I do not feel able to justify it to clients.