Plenty of iconic British characters have been played by Americans (just take Robin Hood) and I'm a great believer that you should hire the best person for the job, irrespective of actual nationality--take Renée Zellweger who's superb as Bridget Jones.
My only condition should be that they play the character as British, if an American actor can convince me he's English/Scottish etc then I have no problem with an American being Bond, or the Doctor.
While I think your opinion would be in the minority amongst your countrymen, I agree and I think if someone other than British was cast, a British accent is a must. We don't want another Kevin Costner American Robin Hood on our hands.
(though I have a soft spot for that movie....one of my absolute favorites from my childhood).