I have the following XAML:
The ObservableCollection's implementation of INotifyPropertyChanged is basically used to react to adding to or removing from that collection.
You need to call Notify...() in the setter, because the collection is a property of your ViewModel and the DataGrid will not react to any changes of your ViewModel's properties, unless you call Notify...() when changed.
Edit: I'm too slow.