If it's startup, the /dev/log connection refused error could be caused by your service starting earlier than logd. The START number of your service can play a role. But generally procd does not guarantee that services are started in the order they were submitted.
As for the connection refused error not being reported, it output to stderr. I guess it's still about the stdio buffer thing.
Good question procd does not check return value of openlog() call. No need to I may say. The openlog() call will be tried each time there arrives something on instance stdio.
Some pseudo code. It's like syslog context switching.
if (instance_stdio_has_sth) {
closelog()
openlog(instance.name)
syslog(instance_stio_content)
closelog()
openlog("procd")
}