Because in many small communities, there simply aren't enough people!
Most small communities only benefit from tourism for around 4-6 months of the year. Although some of the bigger hotels and resorts might bring in seasonal workers and accommodate them on site, it's not uncommon for the people who actually live there year round to have two or even three jobs, as you can't rely on year-round tourism.
So at the height of the season, the local population will be flat-out anyway.
The alternative might be to bring people in from other areas, but populations are small up here anyway - Scotland has a total population of 5.5 million, most of whom (myself included) live in the central belt, far from the rural tourist hot spots - so you'd just be stripping away a resource from another community.
Added to that, the sort of jobs you're talking about are generally minimum wage at best, and people - assuming they own a car - may be unwilling or unable to pay out the high cost of fuel (and fuel in remote areas is generally more expensive than in towns and cities).
The council could bus them in? Perhaps, but again you're talking about remote areas that can be hours apart, so adding hours of commuting time onto a physical, low-paid job?
It's not a simple fix, I'm afraid.