Como bien habeis dicho, hay que hacer el cambio de megabyte a mebibyte (es así como se llama en el estandard, quien se le habra ocurrido, esas miles de mentes pensantes...), y por eso, la capacidad que sale, es diferente.
El por qué puede ser más o menos a la cantidad una vez convertido, es muy sencillo, se debe al sistema de fabricación, en muchos casos, es más facil ponerle una determinada cantidad mayor que una exacta, digamos que antes se le da un tamaño a lo que ocupa cada pequeña unidad que emplee la memoria, y luego se multiplica, que ajustar ese tamaño que ocupa esta unidad al tamaño de la memoria.
Eso sí normalmente sale mayor, para evitar ciertos problemas judiciales. Y no, no os estan engañando, porque un mega es un millon de un tipo de unidad, entonces, si usan el SI, lo siento, pero no es mentira.