Одна из трудностей в использовании системы объектно-реляционного отображения, такой как DBIx :: Class, заключается в том, что вам необходимо поддерживать классы таблиц в актуальном состоянии с вашей схемой. Обычно это так же просто, как добавить поле здесь и там, возможно, время от времени добавляя новое отношение внешнего ключа. Если у вас есть код в управлении версиями, отслеживать его будет относительно просто.
Недостаток обслуживания одной и той же вещи (схема БД) в двух местах перевешивается (ИМХО) преимуществом наличия системы ORM. Как только вы привыкните к работе с запросами DBIx :: Class и их ResultSets, все пойдет намного быстрее, чем постоянная запись необработанных вызовов DBI.
Лично мне не повезло с классами Loader, но с тех пор, как я их попробовал, прошло довольно много времени. Если они работают для вас, это, вероятно, проще, чем вручную поддерживать определения вашей схемы в коде. С другой стороны, меня никогда не беспокоили крошечные усилия, которые для этого необходимы. Схемы базы данных, как правило, не меняются слишком часто, когда система запущена и работает.