Цикл for не имеет смысла.Вы проверяете, есть ли каждая строка из секций-массивов в секциях-массивах, это всегда верно!Достаточно проверить, указана ли дата в массиве разделов
[sections containsObject:date]
Получили ли вы действительную строку даты, которую следует добавить в массив разделов?Как узнать, что разделы пусты?Каково количество массивов разделов?
[sections count]
Ну, вызов addObject выглядит хорошо ...