                     // is the date invalid for this month?
                     var newEnabledValue:Boolean = i < numDaysInMonth;
                     
-                    if (newEnabledValue && (minMonthMatch || maxMonthMatch)) 
+                    if (newEnabledValue)
                     {
                         // test for outside min/max range
                         tempDate.date = curObj.data;
                         
-                        if (tempDate.time < minDate.time ||
-                            tempDate.time > maxDate.time)
+                        if (minMonthMatch && tempDate.date < minDate.date)
+                            newEnabledValue = false;
+                        if (maxMonthMatch && tempDate.date > maxDate.date)
                             newEnabledValue = false;
                     }
                     

    
    private var minDateChanged:Boolean = false;
    
    /**
     *  Minimum selectable date; only dates after this date are selectable.
     * 
     *  @default If minDate is null, the value defaults to 100 years prior to
     *           the currently selected date in DATE mode, and 100 days prior
     *           to the currently selected date in DATE_AND_TIME mode.
     * 
     *  @langversion 3.0
     *  @playerversion AIR 3
     *  @productversion Flex 4.5.2

        if (value == _minuteStepSize)
            return;
        
        if (value <= 0 || 60 % value != 0)
            value = 1;
       
        _minuteStepSize = value;
        minuteStepSizeChanged = true;
        populateMinuteDataProvider = true;
