You are doing exactly the right thing. Don't be embarrassed. Every parent deals with this; they understand. If you did NOT deal with it, that would be a reason for embarrassment. ;o)
All you have to do is continue what you are doing. Be consistent. Each and every time he hits should illicit the same reaction: 1st hit, a firm and deep voiced "NO! NO! We do NOT hit!" while holding his wrists so he cannot hit you again. Be sure you are not holding him in your arms or he will not pay attention to your words, he'll be squirming to get away. Put him down to do this if you must. Crouch down to his level. If he hits again after that, immediately remove him from the situation. Restrain him during removal so he cannot hit or kick you. Let him yell and holler. Don't say a word. Take him in his room and put him in his crib or pack and play and leave. Wait a few minutes, or until he calms himself (whichever happens LAST). Resist the urge to lecture him when you take him out, because he won't understand. Hug him, cut him loose, and give him the chance to start again with a clean slate. Same response from the very beginning if he hits again.
If you consistently handle the situation in this way each time, you will find that he will relate his hitting to social isolation. He'll stop very quickly because he, like any 1 year old, hates to be removed from what interests him far more than he wants to hit you.
Good luck!
C.