Because I wrote it for myself Its the best! For me anyway. My watermarking script places in a watermark smart object layer resizes it for the current docuyment's size and positions the layer.
It would not be easy to automate the use of a custom brush. Most likely you would need to manually use your custom watermark brush.
Actions can not handle document size well. Normally action are created for a particular size document or document within some range of document sizes.
However, you could easily modify my watermarking script to use your watermark file. There are four var statement in the beginning of the script that are easy to change for your preferences. You may only need to change the first one to your watermark file.
You could record using my script in an action and batch that action. That action could also add layer style to the added watermark layer added by the script and even move its location. A layer style can render a layer transparent by setting the layer fill to 0 and add layer effects that will be visible.
http://www.mouseprints.net/old/dpr/PlaceWatermark.jsx