This sounds more like an engine load parameter problem, have the system scanned and check the MAF value and total engine load at idle with no heavy things on. Should remain under 20% at settled fully warmed up idle.
messed up MAF values can cause shift elongation and also cause system to drop out of overdrive, also check if the engine operating temperature remains stable and at thermostat temperature. If it overcools, it will shut down overdrive and cause delayed shifts again (it does it to warm up the engine quickly again)