I majored in foreign languages in college and spent a year in a PhD program studying linguistics, the SCIENCE of language.
The FACT is that people can't REALLY fake an accent. Although "to the untrained ear" it may sound like a valid accent, people TRAINED in the nuances can tell. For instance, if you say "pop", the p at the beginning of the word is "aspirated"--it has a slight puff of breath after it, but the p at the end is "unaspirated".
An ENGLISH speaker doesn't hear them as different "letters", but to speakers of some languages the difference is as obvious as the difference between p and b--because in THEIR language the difference carries MEANING.
It basically comes down to what's called Articulatory Phonetics--the EXACT positioning of the tongue, shaping the lips, opening the INSIDE of the mouth, etc. (put your finger in your mouth and then say ee and ah).
UP TO AROUND THE AGE OF PUBERTY children have a NATURAL ability to adapt their mouths to exactly mimic the sounds (and AUTOMATICALLY learn grammar, etc.--no one has to explain to a 10 year old native English speaker what "I WILL HAVE LEFT by then" means.) After around that age it's impossible. Linguists don't know why.
It's even that way in a person's native language--a DIALOG COACH can tell differences even between regional accents just a few hundred miles apart.