Свойство SelectedDate является значением DateTime.Таким образом, вы должны сравнить его со значением DateTime.
Согласно документам Microsoft.значением по умолчанию для SelectedDate является DateTime.MinValue.Кроме того, может быть лучше установить ответ после проверки правильного значения.
Таким образом, ваш метод может выглядеть примерно так:
protected void but(object sender, EventArgs e)
{
if (Cal.SelectedDate != DateTime.MinValue)
{
Label7.Text = "here is your selected date" + Cal.SelectedDate.ToLongDateString();
}
else
{
//Whatever you want to happen if no valid date
}
}