Non saprei... così su due piedi non sono affatto sorpreso che QUrl visualizzi male un css, anzi sono sicuro che si tratta di un problema ricorrente, dal momento che QUrl non ha niente a che vedere con la visualizzazione (né di css né di altro).
QUrl è un componente dedicato alla manipolazione delle url (il nome QUrl in effetti potrebbe ingannare... oppure anche no). Un po' come os.path nella libreria standard.
Ipotizzo (ma è solo un'ipotesi) che per renderizzare l'html tu utilizzi QWebView, in tal caso il motore sarebbe WebKit, e direi quindi che potrebbe trattarsi di un problema di WebKit, al massimo... se naturalmente non è qualcosa di sbagliato che hai fatto tu. Come sempre, troppe poche informazioni. E comunque non dovrebbe essere Python-related, suppongo. Prova a isolare più che puoi il tuo problema con l'html più semplice che riesci a fare, e il css più semplice che riesci a fare. Se proprio ti sembra di aver eliminato tutti gli errori da parte tua, vedi qual è esattamente la proprietà css che WebKit renderizza male, e prova a googlare per vedere se per caso non è un problema noto...