support generate calendar by initial weekday and days in month