Good idea, html mails do get better clickthroughs than plain old text.
I think your problem is needing the correct headers to tell the mail reader client the content is html, and should be displayed inline.
Google html and email
I created the following testfile.html:
Subject: test html message
Content-Type: text/html; charset=us-ascii
Content-Disposition: inline; filename="testfile.html"
Bold Test Mail
The blank line is important, it tells mail the headers have ended and the mail content begins. Everything after the first blank line in the file is content.
Then the very inelegant (OK, downright crude):
/usr/lib/sendmail -t < testfile.html
The -t says to read header information from input.
Not sure how DH feels about us running sendmail directly, though.