There's no need to use lowercase() on col_name because it's already in lowercase. This code will do what you want:
dt = New Table( "Untitled 2", Add Rows( 1 ),
New Column( "COL_Name", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [1] ) ),
New Column( "Column 2", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [2] ) ),
New Column( "Column 3", Numeric, "Continuous", Format( "Best", 12 ), Set Values( [3] ) )
);
cn_list = dt << get column names(string);
for (i = 1, i <= nitems(cn_list), i++,
cn_list[i] = lowercase(cn_list[i]);
);
If( Contains( cn_list, "col_name" ),
:"col_name" << Set name("Target");
);