I will venture a guess that two things have happened.
1. The 64MB refers to the unformatted capacity of the card. Formatting always carries an overhead (a loss of storage capacity).
2. The card manufacturer is using the value of 1000 bytes for a kilobyte (KB), and 1000 kilobytes for a megabyte (MB).
If you take 64 x 1000 x 1000, you end up with 64,000,000 bytes (manufacturer states as 64MB).
However, the operating system (Windows) uses the values of 1024 bytes = 1 KB, and 1024 KB = 1MB.
So, 64,000,000 divided by 1024 = 62,500 (KB)
62,500 / 1024 = 61.035 (MB)
Therefore, Windows always would have reported your '64MB' card as having a capacity of 61MB, before losing capacity to the formatting overhead.
Exactly the same thing happens with hard disks.