If the check engine light is on then the control module has detected a problem, and that problem is likely causing the idle issue. Have the codes checked and a diagnosis performed by a shop to find the problem.
I am having the same problem. I've replaced a ER value senor and a crank senor. Car still idles high and at stops runs really rough, to the point where it sounds as it is going to stall. It was given me code but not anymore. Anymore ideas to try?