Вы имеете в виду разницу между датами (09/12 - 08/05 = 01/07 = 19 месяцев) или разницу во времени ((date2_seconds - date1_seconds) / секунды_per_month)?
Для первого случая можно использовать аксессоры
greg_year date::year() const;
greg_month date::month() const;
Тогда разница между датами в месяцах:
int months = (data2.year() - date1.year())*12 + date2.month() - date1.month()
Для второго случая у вас есть оператор
date_duration date::operator-(date) const;
И date_duration имеет следующий полезный член:
long date_duration::days() const;
Так что вы можете сделать так:
//date date1, date2
int months = (date2-date1).days()/30;