It isn't about english ... it is because we use multiple of 1024 in calculations: http://en.wikipedia.org/wiki/Mebibyte
If you want to stick to "MB" replace * 1024 * 1024 with * 1000 * 1000 in cache size calculation.