That is exactly the reason. and is the main difference between Apache mode and Nginx mode in W3TC. The plugin needs to be able to create URL rewriting rules on the fly, and nginx gives them no sane way to do it.
Htaccess sucks for various reasons, but most of the suck can be worked around.
What exactly does it do on the fly? Unless the plugin is running under the same user as nginx's master process, which is usually root, it won't be able to send SIGHUP to the master process and reload nginx.conf. So, nothing can be on the fly here, it's probably just one of those fancy ways to make plugin installation "easier" and create configs on behalf of the user.
Also, there is no reason to start nginx under root on linux, just give the binary required net bind capability and start under normal user.
Yes, htaccess is ugly but at least a server operator can restrict the users from pwning the machine and only allow rewrite-configs.