Стоит глянуть исходники.
Есть предположение, что ты "отбираешь" ресурс, представляющий собой заголовок, у tempTable и передаёшь его
во владения table. В результате, у tempTable - заголовок получается дефолтный, а у table - headerList.
Вообще, по тексту вопроса, не очень понимаю в чём, конкретно, проблема?
Почему для table нельзя вызвать?
void setHorizontalHeaderLabels ( const QStringList & labels )