Дата, возвращаемая из dateFromComponents, должна быть в пуле автоматического выпуска, поэтому вы правы, что ваше свойство showDate должно быть «сохранено». На самом деле так и должно быть (если только вы не хотите «копировать»).
Из кода, который вы показали, похоже, что вы передаете право собственности на свой шоу-объект полностью в список (так как вы устанавливаете на него автоматическое освобождение при добавлении). Вы говорите, что объекты даты освобождаются до того, как объекты шоу выходят из списка (или список освобождается)?
Кроме того, вы используете синтезированные свойства или пишете их от руки? Если последнее, каков ваш метод свойства setShowDate?
Вы также можете попробовать зарегистрировать retainCount объекта даты в разных местах (хотя я всегда нахожу, что авто-релиз действительно усложняет это).