A car is not essential, but relying on buses greatly reduce your flexibility and you'd need to plan your itinerary in advance with military precision.....
I think I'd prefer a car. This local company is set up to meet trains and ferries, and would enable you to pick up from Kyle (train from Inverness) and drop at Armadale (for the ferry over to Mallaig, West Highland line train to Glasgow)
Skye Car Hire and Kyle Taxi service
Remember - rental cars in UK are usually manual, you'll need to check if they have automatic - if you need that.
Second the advise about booking Skye accommodation now - it sells out throughout the summer.