$path is the path to where the MIME parser has parsed out your message on disk, and it does indeed try to parse into "safe" filenames.
To get to the name suggested in the MIME structure, you want:
$part->head->recommended_filename();
See the manpage for
MIME::Head
Peace,
-McD
Update: fixed typo, tnx. That will teach me to post before coffee...