Я решил проблему самостоятельно:
Хотя статья, на которую я ссылался, является хорошим предложением, здесь есть неправильная часть; вам не нужно создавать событие в вашем пользовательском классе с помощью PropertyChangedEventHandler, а просто с помощью EventHandler.
public event EventHandler CustomPropertyChanged;
Достаточно, чтобы все работало. Очевидно, вам нужно позвонить, когда ваша собственность изменится
РЕДАКТИРОВАТЬ 1:
Я обнаружил плохую вещь, в то время как в текстовых полях, если элемент управления теряет фокус, обновляется список привязки, в моих пользовательских элементах управления это происходит только при изменении выбранного элемента в списке.
В настоящее время я не могу решить эту проблему.