I just got it the other way round. Patras to Italy. I turned up a little while before and just went into one of the many travel agents and asked them for a place and showed them my (Interrail) pass.
It cost me 10 Euros which was port tax and fuel surcharges.
You re expected to sleep on the deck though but it is easily possible to blag space inside.
Hope this helps.
Oh, it took about 16 hours or so from Patras to Bari