There are two different bus lines operating between Nanaimo (ferry to Vancouver) and Buckley Bay (ferry to Denman/Hornby).
ISLAND COACH LINES
This is an affiliate of Greyhound and Gray Line of Victoria.
They used to have a schedule online, but it's disappeared! If you want to check the schedule or book online use the Greyhound website.
The bus runs to/from the Nanaimo bus terminal. There used to be a bus to/from Departure Bay (the ferry) from/to Courtenay, but it's been discontinued. There is a public bus from Departure Bay to/from the Nanaimo bus terminal, but it's ill-timed and distressingly slow. You could probably walk the distance in about 25 minutes. Note that the bus from Vancouver goes to the depot if you took it on to the ferry.
Book to/from Buckley Bay.
I like these folks because you can phone them from Hornby at (250) 334-2475 for information and to inform them you're catching a southbound bus. You then flag the bus down on the highway (diagonal from the Petrocan station) and pay the driver (about $14 cash).
This is the local upstart that schedules it's buses so they make convenient ferry connections. And if the ferry is late arriving, the bus doesn't leave until after it's in.
I like to patronize them, but you can't reserve in advance on the phone (which they don't seem to answer reliably anyway). They want you to book online - but if you use a Macintosh their site only works with Firefox. The website for bookings or just schedules is http://islandlinkbus.com
Their phone is 1-877-954-3556
To or from the Horseshoe Bay terminal, take the #257 express bus. Downtown, it stops in front of The Bay and a few more places. I personally leave home on foot, hop the Canada Line to downtown, transfer to the #257, walk onto the ferry at Horseshoe Bay, walk off at Departure Bay (Nanaimo) and get into the waiting Island Link bus, get dropped off at Buckley Bay, and canvass the drivers in Lane 1 of the ferry waiting area for a lift to Hornby. Door to door about 4.5 hours, without a car, if you do your planning.