I see I commented on the thread you mention and I would not describe it as a nightmare. DBD::ODBC needs an ODBC driver manager but as it is XS code it also needs the driver manager header files. Many Linux distributions distribute the header files in different packages and you hadn't installed the development package.
I cannot say why isql is returning a timestamp but I'd guess this is down to the ODBC driver and not unixODBC or DBD::ODBC (neither of which change data types). Many bugs in ODBC drivers are attributed to earlier elements of the ODBC stack, e.g., isql perhaps in this case or unixODBC or DBD::ODBC. I'm guessing when you see a date, you are not using the ODBC driver.
It may also help to know which ODBC driver you are using.
unixODBC and DBD::ODBC have been around for years and years. I'm not going to say they are perfect and have no bugs but they are mature and pretty stable in most peoples definition of stable.