please help, this works great for every month BUT december. can some help this
poor boy

<script language="JavaScript" type="text/JavaScript">
<!--
function MM_openBrWindow(theURL,winName,features) { //v2.0
window.open(theURL,winName,features);
}
//-->
</script>


<cfparam name="cal_day" default=1>
<cfparam name="cal_Year" default=#Year(Now())#>
<cfif ISDefined("cal_month") Is Not True>
<cfparam name="cal_month" default=#month(Now())#>
<cfelse>
<cfset EntryDate = "#Dateformat(cal_month,"dd/mm/yyyy")#">



</cfif>

<cfparam name="first_of_mon" default="#cal_month#-01-#Year(Now())#">
<cfparam name="today" default=#dateformat(first_of_mon)#>
<cfparam name="startno" default=#DayofYear(today + DayofWeek(today))#>
<cfparam name="endno" default=#DayofYear(startno + daysinmonth(cal_month) +
DayofWeek(today))#>
<cfparam name="loop_counter" default=#startno#>

<cfif cal_month is '1'> <cfset Mdate = 'January'> <cfelse> </cfif>
<cfif cal_month is '2'> <cfset Mdate = 'February'> <cfelse> </cfif>
<cfif cal_month is '3'> <cfset Mdate = 'March'> <cfelse> </cfif>
<cfif cal_month is '4'> <cfset Mdate = 'April'> <cfelse> </cfif>
<cfif cal_month is '5'> <cfset Mdate = 'May'> <cfelse></cfif>
<cfif cal_month is '6'> <cfset Mdate = 'June'> <cfelse></cfif>
<cfif cal_month is '7'> <cfset Mdate = 'July'> <cfelse></cfif>
<cfif cal_month is '8'> <cfset Mdate = 'August'> <cfelse></cfif>
<cfif cal_month is '9'> <cfset Mdate = 'September'> <cfelse></cfif>
<cfif cal_month is '10'> <cfset Mdate = 'October'> <cfelse></cfif>
<cfif cal_month is '11'> <cfset Mdate = 'November'> <cfelse></cfif>
<cfif cal_month is '12'> <cfset Mdate = 'December'> <cfelse></cfif>

<table width="650" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="18%"><cfinclude template="left_calendar.cfm"></td>
<td width="82%">

<div align="left">
<cfoutput>
<cfif ISDefined('URL.EntryDate') is Not True>
<B class="DLargeFont">#Mdate# #year(now())#</B><BR/>
<cfelse>
<B class="DLargeFont">
#Mdate# #year(now())#
</B><BR/>
</cfif>


Select Month:<select name="cal_month"
onChange="MM_jumpMenu('parent',this,0)">
<option value="?"> Select Month </option>

<option value="?EntryDate=01/01/#Year(now())#&cal_month=1">January
#Year(now())#
</option>
<option
value="?EntryDate=02/01/#Year(now())#&cal_month=2">February #Year(now())#
</option>
<option value="?EntryDate=03/01/#Year(now())#&cal_month=3">March
#Year(now())#
</option>
<option value="?EntryDate=04/01/#Year(now())#&cal_month=4">April
#Year(now())#
</option>
<option value="?EntryDate=05/01/#Year(now())#&cal_month=5">May
#Year(now())#
</option>
<option value="?EntryDate=06/01/#Year(now())#&cal_month=6">June
#Year(now())#
</option>
<option value="?EntryDate=07/01/#Year(now())#&cal_month=7">July
#Year(now())#
</option>
<option value="?EntryDate=08/01/#Year(now())#&cal_month=8">August
#Year(now())#
</option>
<option
value="?EntryDate=09/01/#Year(now())#&cal_month=9">September #Year(now())#
</option>
<option
value="?EntryDate=10/01/#Year(now())#&cal_month=10">October #Year(now())#
</option>
<option
value="?EntryDate=11/01/#Year(now())#&cal_month=11">November #Year(now())#
</option>
<option
value="?EntryDate=12/01/#Year(now())#&cal_month=12">December #Year(now())#
</option>

</cfoutput> </div>


</td>
</tr>
</table>
<table width="650" height="473" border="1" align="center" cellpadding="2"
cellspacing="0" bordercolor="e9e9e9">
<cfoutput>
<tr bgcolor="E9E9E9">
<th width="15%" height="25">Sun</th>
<th width="15%">Mon</th>
<th width="15%">Tue</th>
<th width="15%">Wed</th>
<th width="15%">Thu</th>
<th width="15%">Fri</th>
<th width="15%">Sat</th>
</tr>
<tr>

<cfloop condition="#startno# LT #endno#">
<cfif #Dayofweek(today)# EQ #cal_day#>
<cfset mm = "#DateFormat(today,"mm/dd/yyyy")#">


<CFQUERY NAME="lookupoutage" DATASOURCE="Tracking">
SELECT StartDate, InfoID, OptionType, CustomerName,
Description,StartTime,EndTime,EndDate
FROM INfo
Where ((OptionType = 'Outage' OR OptionType = 'Issue'))
AND StartDate = '#mm#'
<cfif ISDefined('URL.EntryDate')>
AND Month(StartDate) = '#month(URL.EntryDate)#'
</cfif>
</CFQUERY>


<CFQUERY NAME="lookupCustomer" DATASOURCE="CPS_Tracking">
SELECT CustID,CustomerName
FROM Customer
Where CustID = '#lookupoutage.CustomerName#'
</CFQUERY>

<cfset start = "#dateformat(lookupoutage.StartDate,"mm/dd/yy")# -
#timeformat(lookupoutage.Starttime)#">
<cfset End = "#dateformat(lookupoutage.EndTime,"mm/dd/yy")# -
#timeformat(lookupoutage.EndTime)#">
<cfif lookupoutage.endtime is "">
<cfelse>
<cfset MinCount =
#DateDiff('s',lookupoutage.Starttime,lookupoutage. endtime)#>
<cfset Duration = MinCount/60>
<cfset newDuration = #DecimalFormat(Duration*000001)#>
</cfif>

<td align="center" bgcolor=<cfif mm is
'#Dateformat(lookupoutage.StartDate,"mm/dd/yyyy")#'>
<cfif lookupoutage.OptionType EQ 'Outage'>"FF0000"<cfelse>"FFFF00"</cfif>
<cfelse>"009933"</cfif>>
#DateFormat(mm,"DD")#
<cfif mm is '#Dateformat(lookupoutage.StartDate,"mm/dd/yyyy")#'>
<BR/>
<b title="#lookupoutage.Description#"><a href="##"
onclick="MM_openBrWindow('Outage_Drilldown.cfm?Inf oID=#lookupoutage.InfoID#','',
'scrollbars=yes,width=400,height=400')">#lookupCus tomer.CustomerName#</a></b>
<cfif lookupoutage.endtime is ""> <cfelse>Duration-(#newDuration#)</cfif>
<cfelse></cfif>


</td>
<cfset today = "#Dateformat(today+1)#">
<cfelse>
<td></td>
</cfif>
<cfif #cal_day# EQ 7>
</tr><tr>
<cfset cal_day = 1>
<cfelse>
<cfset cal_day = #cal_day# + 1>
</cfif>
<cfset cal_month = #Month(today)#>
<cfset startno = #startno# +1>
</cfloop>
<cfloop condition="cal_day LTE 7">
<cfif #cal_day# LTE 7>
<td> </td>
</cfif>
<cfset cal_day = #cal_day# +1>
</cfloop>



</tr>

</cfoutput>
</table>

<cfinclude template="calendar_Details.cfm">