Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!
Если глянуть внутрь CIBlockElement::Delete, то там будет видно, что false возвращается только в случае явных ошибок. Причем ошибок на уровне MySQL.
Отсутствие элемента - не есть ошибка, то есть фактически произошло удаление несуществующего элемента. нет ошибки ни в логике этого выражения, ни в его реализации.
Ну а если перед началом удаления проверять есть ли вообще такой элемент - это даст один доп.запрос - зачем оно надо.