Unlike what su, jexec, sudo etc while running program under specific user, the daemon(8) does not set USER, HOME and SHELL environment variables just leaving them be at their current values. This is probably not what user expects in such situation.
Current behavior:
$ sudo daemon -u nobody printenv; sleep 1 [...] USER=root HOME=/root SHELL=/bin/sh [...]