Und natürlich finde ich die Antwort sofort nach dem Posten der Frage. Aus dieser Antwort besteht die Lösung darin, einen [BsonIgnoreIfDefault]
hinzuzufügen Attribut zur ID. Im Beispiel aus der Frage wäre es:
public class MongoObject
{
[BsonId(IdGenerator = typeof(StringObjectIdGenerator))]
[BsonRepresentation(BsonType.ObjectId)]
[BsonIgnoreIfDefault] // <--- this is what was missing
public string MongoID { get; set; }
public int Index { get; set; }
}