Yes, please, everyone, do not ever guess anyone's age, especially a child, and especially not to his face.
When my son was in the eighth grade, we went to visit my sister, who has a BIL who teaches 4th grade. My son at the time (and now, actually) was very small for his age, due to a chronic disease, which, at the time, was in the process of being diagnosed. My sister's BIL said to my son "I'm going to guess how old you are. I bet you're 9. I can tell because I teach 9 year olds." My son, who was 13, was very embarrassed at that, but to make matters worse, when told of his mistake, the teacher asked why my son was so small. What the heck?
As a side note, and another rude question, my sister informed me that after we left, her neighbour asked her "what was wrong with that boy who was visiting? Does he have cancer?"