Being equal to 3, 2.9999... is also a whole number.
Teaching to use '=' in a statement like '10/3=3' is an example of where teachers don't know math in depth and make errors about details that are actually important/later cause confusion. 10/3 is not equal to 3. '=' doesn't mean "answer". Then not accepting 3.0 which is equal to 3 just layers on that confusion. '=' is transitive. If a=b and b=c, then a=c.
Saying 3.0≠3 is a subtlety you really only get into in math when defining these things, and then you immediately redefine them so that 3.0=3 and you don't have to think about it again.