Al probar mi codigo html en el navegador.. se mira perfecto.. pero al enviar ese codigo por correo.. no se muestran los correos... es mas no se reciben.. y es porque los gestores de correos tienen filtros con que detienen el contenido de imagenes.
Si queres saber como hacerlo manual sin tanto cuento, te dejo un ejemplo de como tiene que ir formado el email si deseas hacerlo completamente manual:
http://www.campaignmonitor.com/blog/post/1759/embedding-images-revisited/La tabla de esa pagina web esta mal porque en realidad si se ven en Hotmail/Gmail/Yahoo pero nunca esta de mas que hagas tus pruebas.
O mas en detalle:
Primero te recomiendo que antes que continues, hagas una prueba con un cliente de correo normal (Thunderbird/Outlook) y probes enviar tu logo como imagen embebida para salir de la duda si es tu codigo el problema o si los bloqueadores de SPAM de los receptores en realidad rechazan tu logo.
Porque no estoy seguro como estas enviando los correos, pero dejame decirte que en el caso de las imagenes embebidas hay un gran (enorme) problema con los correos, y es que en realidad para que se muestren adecuamente tenes que establecer el tipo MIME (multipart/related) del correo de forma adecuada ya que embeberlos como en HTML normal solo va a provocar que muchos receptores no entiendan el correo o muestre el base64 en lugar de la imagen.
Te digo esto porque fue mi mayor problema cuando comenzamos a mandar cupones a los clientes de forma mensual, asi fue como me rendi de hacerlo a mano y opte por una libreria que manejara la generación del MIME por mi.