Дерево XAML элемента управления создается заново в обоих случаях для каждого экземпляра элемента управления, который вы создаете.Вы можете проверить это, поместив пользовательский элемент управления, который выводит что-то на консоль отладки внутри своего конструктора.Если вы поместите его в шаблон или содержимое пользовательского элемента управления с помощью XAML, в обоих случаях новый экземпляр будет создаваться всякий раз, когда вы создаете новый.
Однако в ListView
ситуация немного отличается- он поддерживает виртуализацию и повторно использует свои элементы, поэтому, как только он загрузит достаточно элементов для отображения и некоторый буфер для прокрутки, он просто продолжит обновлять существующие экземпляры значениями, связанными с данными.