You are also missing the fact that the SNP are facing a lot of criticism at home for the appalling state of Education, Healthcare and Policing in Scotland. Scotish Tories and Labour have been banging that drum and are now starting to turn the screws that the SNP are too focused on independence and not enough on the actual running of Scotland.
Scottish Tories have started gaining a lot of traction since the Scottish Parliament election, and have taken up the mantle of the Opposition in the Scottish Parliament.
Finally, both the SNP and the Tories are looking at targeted tactical polling. I think the SNP may lose some seats, but I'll be happy if they see a dent in their voter count.