Memory sticks/cards, flash drives, etc never have the exact amount of space that's advertised. It's almost always a bit less.
This is usually because the manufacturers simply round the number, because its easier to advertise 1GB, than 957 MB or 0.957 GB.
Eg. I have a 2GB Micro SD card, but Windows XP says it only has 1.87 GB of space. And my 8GB usb flash drive shows 7.66 GB.
Edit: It also might be worth noting that the filesystem (eg. FAT, FAT32) has to take a little bit of space on the card. But not 50 MB worth I think.