Why can't we log items regardless of dev mode?
If you want a log item to appear regardless of whether devMode is enabled, you can pass true as the third argument to the log() method.
Is this accurate?

Yes. Logs will only get flushed to disk is a proper craft()-&gt;end() occurs, firing the onEndRequest event.  So if you're doing something in your plugin like calling PHP's exit() directly or there is some other logic that inadvertently kills the request, then they won't get written to the log file.
I'd suspect that's what you're running into.