За старание крепкая пятерка.
А вот перерисовывать календарь совсем не обязательно. Достаточно раз отрисовать сетку на максимальное количество недель, а потом свойствами менять текст и доступность каждого дня. Ну и день сделать двухпозиционной кнопкой (вкл/выкл).