I believe what's going on has to do with how warnings_are_errors works. I checked the documentation for the R language builder and I found this:
warnings_are_errors: This option forces all WARNINGS from R CMD check to become build failures (default true). This is especially helpful when preparing your package for submission to CRAN, and is recommended for most packages.
My reading of that makes me think that warnings_are_errors only applies to R CMD check and not custom scripts. I believe you'll need to modify your custom script to fail your build.
Basically all of the R specific options are not going to work if you are using a custom script: block. What warnings_are_errors does is simply looks for WARNING in the check logs, so you can do the same in your custom script.