It hurts to hear that you have done ONE thing wrong today when you have done 100 things right all day long. It stings and it has happened to us all. However, the reason you were told is so you don't make the same mistake again, not because you are a bad nurse. It sounds like the message was delivered respectfully and in the long run, helps you be a better nurse.
You also do need to stop being so hard on yourself. The whole "the doctor is mad at you" and "that dr will chew you out" happens where I work and in lots of other places with certain drs. The trick is to step back and analyze the situation objectively:
a) Could you have done something better? If yes, chalk it up as a learning experience and do it the better way the next time. b) Was the person unnecessarily a jerk when they said it? If yes, then really - who is the jerk here? Not you! That's when you put up a barrier and don't let the hurt in! There are weiners in the world after all, in all professions, but they don't have to ruin YOUR life!
If a dr has time to be mad at you, he/she desperately needs a life! Where I work, 97% of the docs are great and 3% can be weiners at various times. Learn to say "meh" and move on.
Regarding coworkers, take the chip off and let the helpers help. If they didn't care they would let you fail, and that is worse. And yes, as time goes by and you become more experienced, you may find yourself looking at a green nurse with less experience and offering unsolicited advice because you CARE, not because they aren't good enough. I hope you can ease up on yourself. Best wishes to you!