Время конца раньше начала, потому что относится к следующему календарному дню. Это нужно указать, а не предполагать молча.
Введите 22:00, 06:00 и следующий день
Создайте строку, укажите начало 22:00, конец 06:00 и отметьте следующий день. Введите 30 целых минут перерыва.
Полная длительность — 8:00
До полуночи остаются два часа, после неё идут ещё шесть. Полная длительность — 480 минут. Одинаковые начало и конец со следующим днём означали бы явные 24 часа.
Отработанный итог — 7:30
После вычитания 30 минут остаются 450 минут работы: 7:30 и 7,50 десятичных часов. Ночная надбавка, порог сверхурочных и обязательные перерывы не входят в результат.