Roughly said, 0.7, 0.4 and 0.3 are not round numbers when expressed in the binary system. Your question can be translated as :
why 1 - 0.6666 - 0.3333 is not equal to 0 ?
This was one of the very first things that were taught one generation ago to students learning computer programming ;). I'm not sure if this is still the case nowaday, since this question appears quite often on this forum. 😄
Chilly Charly (aka CC)