Для небольшого приложения наличие отдельных слоев доступа к данным, модели предметной области и модели представления может показаться излишним, но моделирование вашего приложения таким образом поможет вам решить, что и куда делать. Даже если вы не хотите разбивать свое приложение на три отдельных проекта / библиотеки, решение о том, куда должен идти каждый элемент функциональности, может помочь вам принять решение.
В этом свете доступ к чистым данным (т.е. загрузка файлов XML, их запрос и обновление) относится к уровню доступа к данным, поскольку они зависят от технологии.
Если у вас есть какие-либо операции, которые не относятся к вашей конкретной технологии доступа к данным, но, скорее, могут считаться универсально применимыми в вашей прикладной области, они должны войти в модель предметной области (или то, что некоторые называют бизнес-логикой).
Любая логика, единственной целью которой является предоставление определенных функциональных возможностей для определенной технологии пользовательского интерфейса (в вашем случае WPF), должна входить в модель представления.
В вашем случае файлы XML и все запросы LINQ to XML относятся к уровню доступа к данным.
Чтобы использовать MVVM, вам необходимо создать ViewModel для каждого представления, которое вы хотите иметь в своем приложении.
Из вашего вопроса мне неясно, есть ли у вас что-либо, что можно было бы рассматривать как модель предметной области, но такие вещи, как валидация, являются хорошим кандидатом. Такая функциональность должна войти в модель предметной области. Никакие классы в модели предметной области не должны быть напрямую связаны с представлением. Скорее, именно ViewModel отвечает за перевод между Доменной моделью и View.
Все специфичные для WPF вещи должны идти в ViewModel, тогда как другие классы в вашем приложении не должны знать о WPF.