I followed Daniel Beck's instructions with a few modifications and got this to work for URL files which I wanted to open in Chrome (Firefox would also work) on a Mac.
The script I used is:
sed 's/^URL=/URL=/' "$1" | grep -m 1 '^URL=' | sed 's/^URL=//' | tr -d '\r' | xargs open -a "Google Chrome"
This parses out the URL= line from a typical URL file which looks like:
Save the Automator script someplace like your ~/Library directory. I called mine OpenUrl.app.
Now go to a url file somewhere and open the "Get Info" popup. Change the Open With command to your OpenUrl.app script. Test with just one or click the "Change All..." The first time I clicked that it gave an error, but seemed to work the second time.
In developing this I did get the "Run Shell Script" errors, but that was because of actual errors in the script. I think the key issue with Daniel's script is that it doesn't handle spaces in the file name you try to open.