Lo mejor es que utilices las funciones que te da Delphi, siempre que puedas.
Si cambias de version de Delphi, es más seguro que puedas compilar sin problemas. También si quieres pasar el código a FreePascal / Lazarus por ejemplo.
Puede que cambie la representación interna de un TDateTime (parte entera días, parte decimal horas) a otra diferente. Si utilizas funciones, solo deberás reemplazar o reprogramar la función, si es que la nueva versión no lo ha hecho ya.
Mira estas dos de la Unit DateUtils:
Código Delphi
[-]
function EncodeTime(Hour, Min, Sec, MSec: Word): TDateTime;
function EncodeDateTime(const AYear, AMonth, ADay, AHour, AMinute, ASecond, AMilliSecond: Word):TDateTime;
Deberás tirar los datos de los SpinEdit dentro de los parámetros correspondientes de la función y obtendrás un TDateTime.