def get_next_date_from_date_of_month(date_of_month)
      o = dup
      if day == date_of_month
        o
      else
        if day > date_of_month
          o.increment_month!
        end
        ZDate.new(ZDate.format_date(o.year_str, o.month_str, date_of_month)) rescue nil
      end
    end
def get_next_date_from_date_of_month(date_of_month)
      o = dup
      if day == date_of_month
        o
      else
        if day > date_of_month
          o.increment_month!
        end
        ZDate.new(ZDate.format_date(o.year_str, o.month_str, date_of_month)) rescue nil
      end
    end
returns a new ZDate object, NOTE! this returns nil if that date does not exist (sept 31st)