Ну, причина та же, что и для большинства других вопросов "почему конвертировать в obj из этого конкретного интерфейса не удается".
Ваза с яблоками - это ваза с фруктами. Но ваза с фруктами - это не обязательно ваза с яблоками, и поэтому вы получаете ошибку компилятора. То же самое относится и к единичным объектам.
Вы пытаетесь преобразовать конкретный объект в другой тип, для которого вы можете использовать инъекцию ctor или перегрузку операторов (среди прочего):
public class User
{
public User(Iuser obj)
{
this.myProperty1 = obj.myProperty1;
... assign all field here
}
}
Чтобы использовать это просто сделайте:
Iuser obj = new UserVM()
User user = new User(obj);