I had to change
<cfif find(selectProgram,program_list)>
<cflocation
url="dgim/enroll_dgim.cfm?selectProgram=#selectProgram#&enrollment=#enrollment#&selectDealer=#selectDealer#&signer=#replace(signer,'
','_','ALL')#">
</cfif>
to
<cfloop query="dgim_program">
<cfif selectProgram EQ id>
<cflocation
url="dgim/enroll_dgim.cfm?selectProgram=#selectProgram#&enrollment=#enrollment#&selectDealer=#selectDealer#&signer=#replace(signer,'
','_','ALL')#">
<cfbreak>
</cfif>
</cfloop>
because it was checking for '3' in a list, not 3.