Если вы используете их с умом, они могут обеспечить лучшую понятность. Пользовательский элемент управления является частью вашей разметки. Вы предоставляете ему часть своей модели.
Так, например, если ваша модель представляет собой список типа A, где A имеет комплексное свойство B, для которого требуется сложная разметка, имеет смысл использовать пользовательский элемент управления U, который использует A.B в качестве своей модели. Ваш код теперь стал проще, и если вы хотите изменить или заменить только пользовательский интерфейс B, вы просто заменяете или модифицируете U вместо того, чтобы искать его разметку в V.