The buses are reasonably on time but you just never know and I've experienced delays for one reason or another. I wouldn't want to chance it with just 3 hours between scheduled arrival in Buffalo and flight time.
Just checking the schedule, you will transfer in Toronto and Buffalo bus depots plus cross the border. When I crossed at Detroit years ago, everyone on the bus had to go into immigration and we got held up an extra 30 min. by a student who didn't have correct ID. In the end he got sent back and his friends went on without him. I don't know how it works now crossing by bus, but if it were me, I'd plan to arrive the day before and stay overnight, just to be sure.