My idea would be to leave Apache::DBI as it is for use with legacy CGI code and then add a new module to the distribution that is called explicitly so it has no "distance" issues. Maybe call it Apache::DBI::Factory?
There could also be an attempt to reconcile Apache::DBI with DBI->connect_cached. AFAIK, the only features Apache::DBI has over connect_cached are the rollback cleanup handler and the transparency part, which we don't like. Apache::DBI::Factory could just call connect_cached and add the cleanup part.
Yeah basically that sort of thing, but also allow it to be used outside mod_perl by making sure you wrap all the cleanup stuff in if ($ENV{MOD_PERL}) {} and do the cleanup in END{} otherwise. That's the main reason I roll my own - because I use it extensively outside of mod_perl (though like David, I'm also not doing cleanup *blush*).
Matt.