Fill a date range with trips. Drivers and riders rotate automatically so no one carries the whole week.
Drivers rotate through everyone marked "D" on the roster. Riders rotate through the full roster so seats get shared fairly. Mark who can drive in the roster panel before generating.