Wo wäre der denn Vorteil der Generics hier?
Es ist nur eine interne Verbesserung (unabhängig vom Typ der "Observables"):
if Supports(ObserverCollection.Items[I], INotifyObserver, fIntf) then
entfällt, wenn die ObserverCollection mit INotifyObserver statt IInterface arbeitet.