Нет, нет. Silverlight вызывает PropertyChangedCallback, только если свойство действительно изменилось. Silverlight считает, что если ваш TabHost раньше не был занят и теперь он не занят, то ничего не изменилось, и вы не хотите приставать к ложному уведомлению.
Если вы зависите от получения уведомлений о том, чтобы оставаться в том же состоянии, вы можете пересмотреть свой дизайн: например, вызывая метод RefreshBusyState, а не полагаясь на уведомление об изменении. Ваш вариант использования вращается вокруг кода пользователя, задающего свойство (а не системы Silverlight DP, задающей свойство). Итак, первый вопрос: должно ли это быть свойством зависимости? Если вам не нужно связывать, стилизовать или анимировать его, это может быть обычное свойство CLR, и вы можете вызывать ложные уведомления об изменениях в установщике, если захотите. Если это должен быть DP, но вы хотите знать, когда его устанавливает пользовательский код, тогда сделайте настройщик свойства CLR закрытым и вместо этого предоставьте метод SetBusyState: опять же, этот метод может выполнять любую логику изменения, которую вы захотите. Этот метод не будет запускаться, когда Silverlight повторно связывает, стилизует или анимирует свойство, но он запускается, если клиентский код явно его устанавливает.