Потому что на cms разработка дешевле,
потому что никто не хочет писать админку для сайта, особенно если ее разработка сопоставима по трудозатратам с публичной частью,
потому что заказчик хочет стандартные механизмы управления контентом, а не то что ему придумает разработчик,
потому что заказчик хочет иметь возможность уйти к другому разработчику с наименьшими издержками,
потому что порог вхождения для cms ниже => разработчиков больше,
потому что возможности фреймворков для большинства сайтов не нужны, а для кастомизации cms знающему человеку костыли нужны не на много чаще, чем для фреймворка;
и потому что подавляющее большинство сайтов это не хайлоад с десятками серверов, который беспрестанно пилит команда программистов.