Originally Posted by JSWolf
I know Calibre blanks out the characters not in use. I believe the table entry is still there as when the ligature is missing, and it's trying to be used, you get space instead of a character.
OK, so this does not help for your original answer, but I'd say that's a calibre bug. Have you (or anyone else) reported it?
As a hackish workaround, you could edit the font with FontForge (for instance) and delete the ligatures table (and variants, and others if present).