private static DateTime SkipWeeks(DateTime d, int weeks) { var week = 0; while (week < weeks) { var nextWeek = d.AddDays(7); if (nextWeek.Month > d.Month) break; d = nextWeek; week++; } return d; }