Sobre que no te aparece la variable de correo, no te se decir nada, compruebalo antes de enviar con un echo, a ver si tiene algo :S Lo que si te digo es que no se que hace esto en la cabecera del mail :
'From :'.$correo
Para enviar el mail en html y poder poner la caja, me imagino que solo te faltan las cabeceras de html en el mail :
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
//dirección del remitente
$headers .= "From: SmsContacto <
[email protected]>\r\n";
$headers .= "Reply-To:
[email protected]\r\n";
//direcciones que recibián copia
//$headers .= "Cc:
[email protected]\r\n";
//direcciones que recibirán copia oculta
//$headers .= "Bcc:
[email protected],
[email protected]\r\n";
espero que te sirve y un saludo :)