in reply to HTML/Plain Text mail

A good way is probably Mail::Sender as AidanLee already pointed out below.

If you (really have to) do it "by hand" using low level modules,
You'll have to give this kind of struct to the body :
--$boundary Content-Type: multipart/alternative; boundary=\"$boundary2\" --$boundary2 Content-Type: text/plain; charset="..." Content-Transfer-Encoding: quoted-printable txt goes here --$boundary2 Content-Type: text/html; charset="..." Content-Transfer-Encoding: quoted-printable html goes here --$boundary2-- --$boundary--

Don't forget to add the :
content-type: multipart/mixed; boundary=\"$boundary\"
in the header.

Hopes this helps...

Added the Mail::Sender mention.
Noticed that it was already given by AidanLee.I gave credits.

"Only Bad Coders Code Badly In Perl" (OBC2BIP)