Any time you refer to another person as "he or she is a .." (fill in whatever) you are labeling them. It is a hostile act and you are indicating that there is something wrong with them that they can't change, rather than referring to something that they did and that you disagree with. It is a form of name-calling, what positive can come out of that?
In addition, I believe that the word itself is offensive to people of German origin. Apparently, in English-speaking countries kids are taught that "all Germans are nazis", and Germans who were born after World War II think it is not fair to be held responsible for something that happened before they were born.
If you feel that somebody is overly obsessive about grammar, why not just say that, instead of name-calling?