If you want to create the table with a column named as the first occurrence, you need to use dynamic sql. That's just wanting problems, IMHO.
Otherwise, you could do this:
IF OBJECT_ID(N'tempdb..#updatecontractdetailtable') IS NOT NULL
DROP table #updatecontractdetailtable;
SELECT programID,
Stationid,
CASE WHEN Monday = 1 THEN 'Monday'
WHEN Tuesday = 1 THEN 'Tuesday'
WHEN Wednesday = 1 THEN 'Wednesday'
WHEN Thursday = 1 THEN 'Thursday'
WHEN friday = 1 THEN 'Friday'
WHEN saturday = 1 THEN 'Saturday'
WHEN sunday = 1 THEN 'Sunday'
END AS FirstDay,
StartTime,
contractheaderid,
DelaySeconds
into #updatecontractdetailtable
from ContractDetail
ORDER BY programid,Stationid;