In our training class, our instructor told us to use a command (one word) that would mean come...her preference was "front". She said that come was used too much with other words - such as "come here", "come on", etc.
She recommended to make it exciting for the dog to come to you; if you are reprimanding him when he does come to you, he may be frightened to "come". Make it exciting and speak in a high pitched friendly voice.
I saw this on a tv show, "It's me or The Dog" and I have to say it works everytime.
Look at the dog, make sure that the dog is looking back at you, point to your eyes...make sure the dog looks into your eyes, call his/her name, tap your eyes and then say "come" or whatever word you are using and point downward in front of you--once...do not say it over and over.
If the dog does not come, do the whole thing over and say "come" just one time. He/she will come to you as you are showing dominance. It may take a few moments, but it works everytime. Hot Rod will still be stubborn every blue moon, and all I have to do is point to the eyes, then point down, I don't even have to speak.
Good luck and let us know how it works for you.