in reply to detecting the language of a word?
I also think the problem is the problem: For example "Email", it is a german word indeed that exists in the DUDEN(1998): it equals Emaille, which _is_ enamel. It is completely correct to interpret it that way. You can't tell for sure whether the occurence of "Email" means electronic mail or that enamel stuff.
You'll need to define a limited set of words to be replaced beforehand ("Which English terms are known to be used frequently") and to replace them during parser work won't be a problem.
It'll help and be in the sense of the WAI to put a disclaimer on some home page that asks users to report aural-rendering problems...