Для меня это выглядит как красный флаг:
void panelKalendar_Paint(object sender, PaintEventArgs e)
{
Debug.WriteLine("panelKalendar_Paint");
if (_viewType == ViewType.Week)
{
btnNext.Show();
btnPrev.Show();
lblMonth.Show();
panelKalendar.Size = new Size(SIRKA_KALENDARE_WEEK, VYSKA_KALENDAREBEZPANELU_WEEK);
//...
}
//...
}
Вы изменяете размер элемента управления во время события рисования, которое снова вызывает событие рисования. То же самое с элементами управления, показ или скрытие элементов управления во время события рисования может привести к тому, что элемент управления также станет недействительным.
Не уверен на 100%, я не запускал код.