Failing to start with systemd and unexplained issues

Do not use the init.d file.

You are using systemd, you have use the systemd unit file and wrapper, not the init.d script.

rm /etc/init.d/haproxy
cd contrib/systemd
cp haproxy.service.in /lib/systemd/system/
systemctl daemon-reload
systemctl enable haproxy
systemctl start haproxy
systemctl status haproxy

Note: Haproxy 1.8 and later needs to be compiled with USE_SYSTEMD=1 for the provided systemd unit file to work (needs systemd header files, that would be libsystemd-dev on Debian/Ubuntu or systemd-devel on CentOS 7+ afaik).