Hola joseatm90,
Fíjate que donde recibes las variables del formulario, te falta ; al final de cada línea.
El resto, a pesar de enviarlo con mail (que a mi no me convence) parece que está bien. Yo te recomiendo que
uses PHPMailer con envío SMTP, es más eficaz y los servidores no lo toman tanto como spam.
Espero que te sirva.