From Zagreb to Frankfurt there are direct buses all year around. The bus travel time from Zagreb to Frankfurt am Main is about 15 hours depending on route driven. Timetable for buses you can see below, schedule for buses from Frankfurt to Zagreb you can find here.
Depending on departure, the bus drives either via Ingolstadt and Nuremberg or via Ulm, Stuttgart and Pforzheim. As the bus is often sold out, it is advisable to book your ticket in do time.
Please note that there are no buses from Zagreb airport to Frankfurt, all buses drive from the bus station in Zagreb.