Islands probably have some runtime performance benefits, but the dev experience and build-time complexity is probably just as high or higher than most JavaScript SPA setups.

IMO no, because with a SPA everything has to be a SPA, which is incredibly inconvenient.

The benefit of the island is only the island has to be a SPA. The rest can be SSR.