Well, you have checked all the usual suspects. Sous to me like your base idle is set too low and the idle is hunting. The problem will get worse with the AC running.
Here is how to fix it:
1 - Start the car.
2 - With the motor running, unplug the wire harness to the IAC. If the car dies, you have found your problem.
3 - When you unplug the harness, the car should almost die, but not stop running. If the idle is unaffected by removing the harness, then the idle is set too high.
4 - Adjust the idle set screw on the TB until the car just barely runs with the harness removed.
5 - The SES will come on...no worries. Disconnect the battery to reset the idle speed fuel curves and reset the light. Reconnect and you owe me a favor! If this does not work, then sell it.