What are the differences in map id functions

what are the differences in map id functions ?

c.MapIdMember(f => f.Email);
c.MapIdField(f => f.Email);
c.MapIdProperty(f => f.Email);

My understanding of these different BsonClassMap methods is that they all produce the same result (Mapping the Id member via code instead of using the BsonId attribute).

All three will produce a BsonMemberMap which represents the mapping between a field or property and a BSON element.