Hallo,
hier findest Du eine Seite mit 'ner Liste von Mimetypen, das ist das, womit Du rechnen solltest/kannst/musst:
SelfHTML - Mime-Typen
Die Methode, den Text über den TWebBrowser zu holen, finde ich gut.
Ansonsten sieht Dein Programm so aus, als sollte das funktionieren.
Was mir auffiel:
Nachdem Du den PlainTextBody gefunden hast, verlässt Du die Schleife mit break, beim HTMLBody nicht.
Sollten in 'nem EML mehrere PlainTextBodys sein, so übernimmst Du damit den ersten, beim HTMLBody jedoch den letzten.
Zugebenermaßen weiß ich nicht, ob es auch nur annähernd spezifikationskonform ist, wenn es in 'nem EML mehrere Plaintext-Bodys oder
HTML-Bodys gibt / geben darf / geben kann.