in reply to question on Time module
Make use of another date module such as Date::Manip, Date::Calc or Time::Piece (core module in 5.10).
These may also be able to replace what Date::Format is doing for you.