Я выполнил ваш код, и уведомление не сработало. Затем я раскомментировал оператор присваивания localNotif.alertBody, и он сработал. Локальное уведомление не будет отображаться как предупреждение, если вы не укажете alertBody. Плюс пункт, поднятый Иданом, также действителен. Если ваше приложение находится на переднем плане, уведомление не будет отображаться, скорее вы получите обратный вызов в делегате приложения, в котором вы должны отобразить предупреждение с сообщением уведомлением.alertBody для согласованности.
Надеюсь, это поможет:)
PS Вам не нужны все компоненты каландра, которые вы делаете. Зарегистрируйте их оба, и вы увидите, что и pickerDate, и itemDate одинаковы.