I remember years ago, before they cast Voldemort for Harry Potter, John Malkovich was heavily tipped to play him. Then JK Rowling came forward and said absolutely not, British actors only, please.
They are very protective of some of these roles, but we don't care if they play our Presidents or famous Americans.
(Anthony Hopkins, Stephen Dillane, Daniel Day Lewis, Rufus Sewell, Tom Wilkinson, in addition to them playing Superman, Spider-Man, Batman...). I guess Robert Downey Jr. as Sherlock Holmes broke the trend as you say.