Do any British actors do good American accents - what about Michael Caine's most recent film - I heard that was meant
to be quite good (I haven't seen it yet)?

It's interesting you ask this because it is something that I have looked out for for the past few years. Michael Caine was lauded for his performance in 'The Cider House Rules' but the critics (and , I presume, most New England locals) cringed at his accent which lapsed back into East London at every phrase.

Those that (in my opinion) have done more than an ample job of it are listed as follows:

Bob Hoskins for 'Sweet Liberty' in which he played a film scriptwriter who completely fictitionalises an important historical work on the American war of Independence written by college professor Alan Alda (who, ironically, wrote the actual screenplay for the film). The film also stars Michal Caine (playing a near miss of himself) and Michelle Pfeiffer.

Bob Hoskins again for 'Who framed Roger Rabbit'. Seems that the husky Cockney accent is a close one to 'da mob' accent.

Ben Chaplin for 'The thin Red Line'. A lot of people thought he was a descendent of Charlie and, thus, American. Ben is actually English born and bred and the names are coincidental.

Liam Neeson for many, many American films before he got the part of Schindler. Coming from Ballymena, Co. Antrim his deep, husky voice is highly adaptable for many foreign accents (though the Cork accent of Michael Collins was not one of them!). Most of his American film parts were of Deep South characters because their accents evolved from the deep Ulster accents that are so familiar.

Bit of trivia: I was surprised that the majority of my Continental European friends didn't know that Liam Neeson was Irish. They presumed he was Dutch, German, Danish etc. because his accent in 'Schindler's List' is, apparently, faultless. I am gob-smacked (there's a word for AWAD! ;^) ).