Are your using Access 2007 or 2010? If you're using an older version, it won't open accdb files.
Can you run Access the normal way (interactively) and open the file successfully?
If you can open it when using the interactive method, what happens if you specify the complete path to the accdb file in your OpenCurrentDatabase call? It's very likely that without the full path Access' current working directory won't be the one where your Perl script and accdb file are located.
Re: Ms Access and win32 ole
Replies are listed 'Best First'.
Most of my Win32::OLE experience has been with Excel, not Access, but a little Googling found this link: http://msdn.microsoft.com/en-us/library/office/bb238012(v=office.12).aspx which specifically says that OpenCurrenDatabase is for manipulating Access and opening files, while OpenDatabase returns a Database variable but doesn't actually open the file in the Access window. So for you, you want OpenCurrentDatabse. Beyond that, the best thing I can offer is to check out the documents I linked to, which are the Automation docs for Access 2007 (switch to 2010 if that's what you're using).
The other tip I've seen is to record a macro of the task you're trying to achieve and examine the VBA code that Access creates. It looks like you're on your way already to knowing the Perl Win32::OLE to VBA equivalent