To see where the CLRWDT instructions are inserted, you would have to look at the .LST file because they are part of the library, not the generated .ASM code.

The one's you found are part of DT_INTS, and as you can see they also respond to the NO_CLRWDT define.

The base period of the WDT on a 4580 is 4ms, and with a postscaler of 512 it will timeout after about 2 seconds.

Your main loop will take less than 2 seconds each time so a single CLEARWDT statement at the end of the loop just before GOTO Main should suffice, although it may be advantageous to put it in the area where it updates the heater drives just to be sure that is getting accomplished. But then if you turn off power to all 4 channels, you'll have to clear it somewhere else or it will reset every 2 seconds. You may just have to play with it and see what works best.
Code:
            IF ChannelPWR(pid_Channel) THEN
                HeaterDrives(pid_Channel) = pid_Out
                CLEARWDT
            ELSE
                HeaterDrives(pid_Channel) = 0
            ENDIF
HTH,