Esatto, il tuo codice usa un'email multipart che "ricade" sul testo se non viene supportato l'HTML.

Questo codice invece manda solo HTML (e se uno non lo supporta vedrà i tags come testo, ma è una situazione a dir poco rara).

Ti riscrivo il codice completo:

Codice PHP:
$from "tuaemail@qualcosa.com";
$to "qualcuno@qualcosa.com";
$subject "Email di prova";
$body "Questa è una [b]mail[/b] di prova in [i]HTML[/i]!";

$newline "\n";     // NOTA: importante mettere le virgolette e non gli apici così viene interpretato come \r\n

// Settiamo gli headers
$headers 'X-Mailer: PHP/'.phpversion().$newline.
'From: '.$from.$newline.
'Reply-to: '.$from.$newline.
'Subject: '.$subject.$newline.
'MIME-Version: 1.0'.$newline.
'Content-Type: text/html; charset="iso-8859-1"'.$newline.
'Content-Transfer-Encoding: 7bit';

return 
mail($to$subject$body$headers);