Get this into your head right now:
YOU ARE NOT FLAWED.
There is no "perfect". There is no "ideal". There is no"If only I were ____, I would be _____".
Who you are right now, what you look like right now, what you weigh, what you feel, what you are....is enough. It's ok. You are ok.
Throw out those "should's". Screw 'em. Nothing will mess with your head more than, "But I SHOULD be ____." There is no right or wrong way to live your life. There is no right or wrong way to look, feel, live. There's just you. And God, or the Universe or whatever you believe doesn't just randomly create stuff flawed.
Figure out what makes you happy. If it's not where you are today, then ok, take action. DO what you need to do to change things, but don't think for one second, that you are anything short of perfection RIGHT NOW.