Можно попробовать перевести дату и время по отдельности к типу str, затем через пробел сделать конкатенацию, после чего полученное выражение подать на вход функции pd.to_datetime, которая вернет полноценный datetime формат искомых значений.
В случае, если изначальные даты у вас в формате datetime сделать так:
pd.to_datetime(df['start_date'].dt.date.astype(str) + ' ' + df['start_time'].dt.time.astype(str))
А если изначальные даты в строковом формате, то опустить "dt.date" и "dt.time" части.
UPDATE
Еще можно сделать так, например:
date = pd.to_datetime('start_date')
time = pd.to_timedelta('start_time')
date + time
Чтобы получить datetime формат следует сделать следующее:
(date + time).to_pydatetime()