Actually, this is NOT guaranteed to work.
Date::Manip version 5.xx does not include the Date::Manip::Date module. Date::Manip 6.xx is a complete rewrite which breaks the module into several pieces including Date::Manip::Date for working with dates (and other modules for working with deltas, timezones, etc.). The actual Date::Manip module is just a backwards-compatible wrapper around these modules.
So, if you say:
$obj = new Date::Manip::Date;
and you have Date::Manip 5.xx installed, this code will fail, exactly as described elsewhere in the thread.
As suggested elsewhere in the thread, the proper solution IS to include the line:
in the code.