Я не думаю, что это UserControl.Больше похоже на CustomControl.
В UserControl, по сути, несколько элементов управления вместе взятые.В CustomControl вы либо создаете, либо изменяете совершенно новый элемент управления.
В обоих случаях было бы немного неправильно попытаться вставить в него MVVM.Особенно потому, что вам нужно использовать свойства зависимости, чтобы представить состояние вашего нового элемента управления.Таким образом, вы можете использовать MVVM, когда вы помещаете свой элемент управления в другое представление.