Matthew Macfadyen wins again on Skye