I completely agree that Leonard was an asshole when he told her she had a one in a million shot. He deserved to be punched in the face fir that comment. Talk about unsupportive and kicking someone while they are down.
And yes, they make Penny way too dumb at moments and it really bugs me when it happens.