What I'm saying is that Mac OS X's system-wide spell checker (which is the spell checker used by Mail) is quite accurate most of the time. It should not have trouble with simple words, such as "cat." (I realize that's only an example you provided, but you said you can barely spell "cat," and the spell checker isn't any better that you, so from deductive reasoning, we can assume that Mac OS X's spell checker has trouble with simple, 3-letter words as well)
I'm alluding to the fact that perhaps there is something wonky with your system -- maybe Mail isn't using the built-in spell checker, maybe the spell checker has been switched to a different language, or perhaps the spell checker is somehow "broken."
We have two options from here on out:
1) Find out what the problem is with the Mac OS X spell checker, fix it, and renew your faith in the default Mac OS X spell-checker, or
2) Just scrap the spell checker altogether, forget about finding out what's wrong, and try and find a new spell checker.
I vote for number one, as the spell checker should function properly and from your description, it sounds as if it is not. But it's your call. 1 or 2.