Forget taking it to the dealer or the reprogramming garbage. Pull the servo. It was under the cover below the passenger dash on my 2005 suburban. There are two of them. You want the one on the left closest to the hump. 5 screws and some alcohol later and my issue was resolved. Open the servo carefully. Take a pic of the gear position in case you drop it. Remove the main black gear only. Clean the contacts with rubbing alcohol and a q-tip. Remove any excess grease. They packed so much grease in the servo that the contacts become fouled. I cleaned mine and haven't had the Chevy lemon issue again. In fact, it blows ice cubes now. Chevy will sell you on all kinds of expensive parts and labor. Avoid the dealer at all cost and do it yourself.