It may sound pollyanna-ish to recommend saying kinder things to yourself, but in short, that's in fact the best medicine. Try thinking about your competitions in more flexible terms. For example:
Instead of saying to yourself, "I'm not good at ...," you can tell yourself, "I missed it the last two times I tried. I know I can do this because I have done it many other times."
Instead of worrying about how well you should be doing by now, you could focus on all the things you can be grateful for -- your health, the progress you have made, your ability to skate at all, the people who support you in your passions...
Instead of thinking you are a special case who needs drastic overhauling, realize that a lot of what you go through is normal and very common among athletes and non-athletes alike. This way you can spend less time beating yourself up about having the "wrong" emotions. One way to do that is to label situations in terms of what is happening versus what you are like. For example:
Instead of saying, "I am always like this," you can say, "I sometimes worry about doing well in competition. Competitions make a lot of people nervous -- even Olympians."
And then take the best possible care of yourself leading up to the event. Be early for things, eat right, practice deep breathing every day, and get enough rest so that you have the energy to compete well.
I hope that helps!