Short answer: YES. Use your notification interfaces on your model when you need to notify about changes. Do not worry about hiding this code. Be pragmatic.
Long answer: My philosophy is this: When implementing MVVM, directly communicate with model objects when there is nothing superfluous. When you need something new (new behavior, properties that the view will use, etc.), you transfer model objects to ViewModel objects. The ViewModel, which does nothing but delegate data from the model, is nothing more than additional code. At the moment when you need to do something with the data received from the model object, you enter a layer.
So, to expand my thoughts further, (and to answer your question more directly), there must be a way to show ViewModel models when something changes. Often these models are immutable, so it does not need this notification mechanism, so this is not necessary. BUT, it also often happens that the model changes. When this happens, the model has two options: use a custom notification method (events, delegates, etc.) or use INotifyPropertyChanged .
If you look at the namespace for INotifyPropertyChanged , it is in System.ComponentModel - not in the view - so I prefer to use it in the model. This is a well-known interface, and you can use it to bind directly to your model from your view. No need to implement anything.
Taking this philosophy one step further, the ObservableCollection is located in System.Collections.ObjectModel , is also view-independent, and implements System.Collections.Specialized.INotifyCollectionChanged , which is also view-independent. In other words, an ObservableCollection was created as a collection that notifies its observers of changes. If you have a model that needs to do this, then ObservableCollection is your tool. It is just convenient (not accidental) that WPF and Silverlight use these interfaces to bind data.
I guess this is a long way of saying, “YES. Use your notification interfaces on your model when you need to notify about changes. Don't worry about how to clone your code with this. Be pragmatic.”