Horde for some reason doesn’t pick up the system timezone and defaults to UTC, to fix this you’ll need to edit Horde’s own php.ini at
Add the following line (affixed with the your desired timezone)
date.timezone = Asia/Singapore
Now restart apache and verify the change has taken effect.
Note: A client’s server experienced this issue again, turns out if you rebuild the server configuration files this setting will be wiped. So be sure to apply this again if you rebuild the configuration files.