Поскольку вы не указали, я не уверен, какой язык есть в вашем внутреннем фрагменте, но он выглядит как C #?
В любом случае, вы отправляете дату с часовым поясом - GMT+0200 Это правильный способ его отправки, содержащий всю информацию, которая нужна серверу для правильного сохранения даты.
На сервере вы преобразовываете полученную дату в DateTime.SpecifyKind, который из быстрого веб-поиска (я не знаю C #) выглядит так, как будто он переопределяет часовой пояс, в вашем случае - игнорировать часовой пояс даты и принудительно установить его в UTC.
Это приведет к смещению времени на величину смещения часового пояса вашей первоначальной даты от UTC (2 часа), что приведет к 22:00 предыдущего дня вместо 00:00 ночи в намеченный день.
Итак, используйте фактический часовой пояс Даты вместо переопределения его в UTC.