Хорошо, я нашел ответ сам. Это ошибка в Silverlight ..
Код, который делает следующее
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
должен быть непосредственно в классе, к которому вы привязаны, а не в его предке. У меня это было внутри метода FirePropertyChanged () в базовом классе, и перемещение в производный класс имело значение.