Ваш HTML содержит только таблицу и не отформатирован как полная HTML-страница.Но он читает правильно с Thunderbird.В любом случае, я бы добавил минимум до и после таблицы, чтобы она выглядела как приемлемая HTML-страница:
...
prolog='''<html>
<head><title>Incident details</title></head>
<body>
'''
epilog = '</body></html>'
html_body = prolog + df + epilog
...
Это не очень хороший HTML, но, по крайней мере, у него есть блок html
,заголовок, содержащий заголовок и тело.При этом он должен быть читаемым даже на менее терпимых читателях почты.