OK so I thought I had got it right in my head an now I'm not so sure, what you put before I could working in the page and that was fine. I have now got this far making the component and I'm a bit lost because I cant find anything that gives an example of a CFC running as a remote web service using a 3rd party system anywhere as a guide :/
This is what I have so far in the CFC
<cfcomponent name="vatcheck" hint="checks the clients vat number against the EU system and gives a repsonse to its validity" output="false">
<cffunction name="checkvat" returntype="any" access="remote">
<cfargument name="vatnumber" type="string">
<cfinvoke webservice="http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl" method="checkVatRequest" returnvariable="parameters">
<cfinvokeargument name="parameters" value="#vatnumber#">
</cfinvoke>
</cffunction>
</cfcomponent>
On page
<cfajaxproxy cfc="vatcheck" jsclassname="jsobj" />
var cfcAsAjax = new jsobj();
var data = cfcAsAjax.checkvat(CountryCode +', ' + vatNumber)
So any pointers as to where I have gone wrong would be great 
Obviously,
<cffunction name="checkvat" returntype="any" access="remote">
<cfargument name="countryID" type="string"><!--- 2-letter code --->
<cfargument name="vatno" type="string">
<cfinvoke webservice="http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl" method="checkVat" returnvariable="parameters">
<cfinvokeargument name="countryCode" value="#arguments.countryID#">
<cfinvokeargument name="vatNumber" value="#arguments.vatno#">
</cfinvoke>
<cfreturn parameters>
</cffunction>
Then proceed from there.