То, что вы сделали, должно работать, но есть две вещи, которые вы можете попытаться увидеть, если результат будет лучше.
Тест1: который просто обменивается, когда используются двойные и одинарные кавычки.
$this->default->join('db D', "C.col1 = D.col1 AND D.col2 = 'MAIN'", 'LEFT');
Тест 2: который отключает экранирование значений и идентификаторов для вызова join
this->default->join('db D', 'C.col1 = D.col1 AND D.col2 = "MAIN"', 'LEFT', FALSE);