Gotta agree with you, they are professionals where all the other sports are truly amateur.
I guess though, the reasoning is that the NHL and other professional teams grab all the top players from each country regardless of where they will be playing. (You don't see the same sort of thing happening with cross country ski teams or curling or whatever- they all draw from the best that the individual country can supply.)
So it seems fair that these guys can go back and play for their country because the playing field is even - each country can play their best players!
The problem arose when the Soviet Union started winning everything with their "amateur" hockey teams.....amateur did not mean the same thing to them as it did to the rest of the world! That sort of unfairness is what can be avoided by playing professional players in the Olympics.