Because if they sold it as a 20 gbyte unit, but priced it as a 64 gbyte unit, they'd get called out for that instead. Damned if you do; damned if you don't.
It's not the user's problem that the OS takes up that much space. The user is already paying for the license. He shouldn't have to pay twice (that 40 GB of SSD space is pretty expensive).
Compatibility is a huge reason why so many people still use windows. Compatibility with older applications and formats. That's what takes up so much space.