Добавление или удаление вообще работает.
В трассировке вы получите предупреждения о том, что свойства либо отсутствуют, либо не найдены, но все данные, которые будут перенесены и куда нужно обратиться, все равно будут там. Вы должны помнить об этом при разработке, так как не все ваши поля могут содержать действительные данные.
Изменение типов, работает не так хорошо и часто приводит к исключениям во время выполнения.
Мне нравится использовать явные объекты передачи данных, а не сохранять мою фактическую модель данных, которая используется во всем приложении. Тогда ваш перевод из DTO-> Model может учитывать различия версий.