Убил тучу времени на поиск причины почему не работает Сache Dependencies в самописной компоненте. Оказалось, что очистка кеша не выполняется, если после CIBlockElement::GetList() нет вызова GetNextElement().
Столкнулся с похожей проблемой только после обмена с 1С хотя используется в самописном компоненте while($ob = $res->GetNextElement())