To risk the hatred of some.... I'll post a conceptual look at it.
To look at it a different way, what if the misfires are occuring because the fuel mixture actually is lean? That is the O2 sensor is operating correctly and getting a result that the computer isn't expecting?
What if the computer is thinking that it is getting a certain amount of air in but really is getting more?
I've read that it behaves well when driving, but not at idle. That the idle bounces around.
How does this vehicle control idle air? It may be worth a look into how that system operates and where it may need to be tested/cleaned/inspected to make sure it's ok....