Windows Worker - One or more required ports is unavailable on this node

I have a UCP Master (version 2.2.5) and am trying to get my Windows Worker to join the swarm. I have followed the instructions at https://docs.docker.com/datacenter/ucp/2.2/guides/admin/configure/join-windows-worker-nodes/ - and all seems ok until i join the swarm. I get the following error from the Windows ucp-agent:-

S C:\Program Files> docker logs 289
"level":“info”,“msg”:“Initializing UCP Agent …”,“time”:“2018-02-22T18:06:48Z”}
“level”:“info”,“msg”:“Connecting to local Docker daemon.”,“time”:“2018-02-22T18:06:48Z”}
“level”:“info”,“msg”:“Loading UCP Configuration file.”,“time”:“2018-02-22T18:06:49Z”}
“level”:“info”,“msg”:“UCP agent initialization complete.”,“time”:“2018-02-22T18:06:49Z”}
“level”:“info”,“msg”:“Beginning state difference detection loop…”,“time”:“2018-02-22T18:06:49Z”}
“level”:“info”,“msg”:“detected state difference for component: Docker Proxy”,“time”:“2018-02-22T18:06:49Z”}
“level”:“info”,“msg”:“Detected difference in desired and current state of UCP on this node.”,“time”:“2018-02-22T18:06:49Z”}
“level”:“error”,“msg”:“port check for Docker Proxy component unsuccessful: Error while checking for available ports: the following required ports are blocked on your host: 12376. Check y
ur firewall settings”,“time”:“2018-02-22T18:07:24Z”}
“level”:“error”,“msg”:“Port check failed: Error while checking for available ports: the following required ports are blocked on your host: 12376. Check your firewall settings”,“time”:“20
8-02-22T18:07:24Z”}
rror while checking for available ports: the following required ports are blocked on your host: 12376. Check your firewall settings

However - the windows FW is turned off - and i can telnet (whilst the ucp-agent port check container is running) from the UCP to the windows worker on port 12376 - so isnt blocked by any FW rule. I cant seem to get past this issue…any ideas? Any extra logs i can look at/generate to try and help pinpoint the issue?

PS C:\Program Files> docker version
Client:
Version: 17.06.2-ee-6
API version: 1.30
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:46:09 2017
OS/Arch: windows/amd64

Server:
Version: 17.06.2-ee-6
API version: 1.30 (minimum version 1.24)
Go version: go1.8.3
Git commit: e75fdb8
Built: Mon Nov 27 22:55:16 2017
OS/Arch: windows/amd64
Experimental: false

PS C:\Program Files> docker info
Containers: 6
Running: 2
Paused: 0
Stopped: 4
Images: 2
Server Version: 17.06.2-ee-6
Storage Driver: windowsfilter
Windows:
Logging Driver: json-file
Plugins:
Volume: local
Network: l2bridge l2tunnel nat null overlay transparent
Log: awslogs etwlogs fluentd json-file logentries splunk syslog
Swarm: active
NodeID: jnpx24ligkobqkqsvqaxdq3gk
Is Manager: false
Node Address: 51.141.xx.xx
Manager Addresses:
13.79.xx.xx:2377
Default Isolation: process
Kernel Version: 10.0 14393 (14393.2068.amd64fre.rs1_release.180209-1727)
Operating System: Windows Server 2016 Datacenter
OSType: windows
Architecture: x86_64
CPUs: 2
Total Memory: 16GiB
Name: Win-Docker-3
ID: QTRJ:FSFN:HP7T:SCRW:G5KI:LEZL:FYPF:SHXR:GZ26:WGIN:BTHK:3BYV
Docker Root Dir: C:\ProgramData\docker
Debug Mode (client): false
Debug Mode (server): false
Username: xxxxxxxxx
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false