The script recorder is for testing web sites rather than web services. Although this technically shouldn't stop you from using the recorder on webservices... the problem is that the webservice needs to expose an interface. Some of them do for testing reasons (you get the 'invoke' button when you go to that page in a browser), but in production this usually isn't true.
My recommendation would be to figure out which webservice methods are invoked when you click the button, and use the webreferences script by uncommenting that method.
If you still can't add the webreference, it may be because the webservice implements Webservice Extensions (WSE). These are nonstandard, Microsoft-specific enhancements to webservices. The reason that the webservice will not work is because they do not exist in the same SoapHttpClient namespace as a regular webservice. WSE as I understand it is a 'roll-your-own' webservice platform that doesn't conform to open webservice standards.