First make sure the upper limit is higher than the lower limit for each condition (like A/C on). I recommend at least 200 RPM difference, otherwise it may "hunt".
If the IAC is bad, it is probably bad when A/C is off.
Try making the A/C on idle settings the same as the A/C off idle settings. Does it idle OK? If so, there is probably something wrong with the data in the cell(s) that are being used when the idle goes up. This means you need to adjust timing or fuel there.
However, there's a known problem with changing idle settings in the PFC... sometimes. After you change idle settings in the PFC, they don't always "take".
Make changes to idle settings, then save your settings to a file using FC Edit. Important to make sure you've saved it, so do a READ ALL, SAVE AS and remember the filename. Load that file to verify. Then, with the engine not running, but ignition key on, do Reinitialize Power FC. That loads default data from the ROM into NVRAM (working memory) inside the PFC. Turn the ignition off. Wait a bit. Turn it back on. Then do a READ ALL to make sure FC Edit is still talking to the PFC. Finally, open your saved file and write all.