Y, por supuesto, encuentro la respuesta inmediatamente después de publicar la pregunta. A partir de esta respuesta, la solución es agregar un [BsonIgnoreIfDefault]
atribuir a la identificación. En el ejemplo de la pregunta sería:
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; }
}