Il problema con le raccolte personalizzate in 1.4.2 e versioni precedenti è che poiché non è presente alcun serializzatore registrato per la raccolta personalizzata, il driver C# tenta di serializzarlo utilizzando BsonClassMapSerializer. Ma BsonClassMapSerializer richiede che la classe venga serializzata per esporre tutti i dati da serializzare come proprietà get/set pubbliche (cosa che la tua classe di base List
L'unica cosa che cambia in 1.5 è il modo in cui il driver sceglie quale serializzatore utilizzare quando un POCO implementa IEnumerable o IDictionary.
Puoi utilizzare raccolte personalizzate già in 1.4.2 e versioni precedenti registrando in modo esplicito un serializzatore per la tua raccolta personalizzata in questo modo:
BsonSerializer.RegisterSerializer(typeof(MyCollection), new EnumerableSerializer<int>());