Buses in Africa do not depart on time, even if they have a schedule or a departure time. Except in Mozambique. And except for the first bus of the day in Zambia. Although not with every company. In Namibia, they do depart on time. Except when they're running late. In Malawi, they depart when full, except if the driver wishes to leave early. Sometimes, you can buy tickets in advance (Uganda), sometimes not (Malawi), sometimes only for certain buses (Tanzania), sometimes online (South Africa), sometimes in person only (pretty much everywhere else). In Kenya, you simply get shot at in buses.
On our last morning in Vilankulo, we discovered a new one; a bus didn't leave because it didn't have enough passengers. Usually, this is not a problem in Africa- the bus will simply stand there for whatever time it takes for it to fill up (usually the driver will either be asleep or drinking at a bar) before taking off. However, a nice Chilean guy we'd met stumbled into our hostel in the early hours of the morning; he later told us that he'd gone to the bus station around 2am (a usual time for a Mozambiquean bus to depart) only to be kept waiting and then being told that the bus wouldn't go because there wasn't enough passengers. He ended up hitchhiking to the main road later that day, and since we never heard from him, figured he found some way of getting up north. Or he might still be at the junction, waiting for a bus.
Anything is possible with African buses, and very few things surprise me anymore. Apart from the hugely expensive one in Mozambique, they are also uncomfortable, hot and cramped; you'll always come out with a bad back or a cricked neck, or end up holding a baby or a goat in your lap. It's also a great experience which you cannot have elsewhere- with people sharing their snacks and hawkers going on overdrive when they spot an approaching bus. Taking buses and doing long journeys is a part of every African's life.
Basically, there's always a bus. Or if not a bus, a taxi. If not a taxi, a combi, a matatu, a minibus, a truck, a donkey. You can always get around. And really, there are no absolute rules, and so when we were told that our bus to Maputo would leave "in the morning", it didn't fill us with confidence.
In Mozambique, buses usually depart early, before sunrise. To be on the safe side, Rich walked over to find the bus driver the evening before (we were simply told to "go in town and look for the driver" whilst I, err, had a cider and played pool) to ask what time he'd depart. Apparently, around 3am. So, we set our alarms for 2am, and walked, with the assistance of the night watchman, to the side of the road. The bus was already nearly full, with chaotic people loading bags and kids, and with most passengers looking as if they'd slept in there (including the driver). As the bus filled up fast, it left early, about 20 minutes before it was officially due to leave. Why wait if it's already full?
The basic thinking would be to arrive early, and expect to leave late. If you're lucky, a half an hour's wait will do. Unlucky, and you'll have to come back the next day. Or next week. Really, there are no rules, and I would suggest doing what I do- pick a time and hope for the best.