Yup. It is possible that your service is buffering output before actually writing it to the standard error stream. Try attaching to it with strace -e write PID and observe whether it is actually calling write(2, "some message"..., somenumberofbytes).
To approach this from the other direction, try this program:
import sys, time
while True:
print('test out', flush=True)
print('test error', file=sys.stderr, flush=True)
time.sleep(5)
To approach this from the other direction, try this program:
With this service: