A few reasons. Some of them are only valid for Scotland though.
In order to actually leave the EU, parliament has to enact article 50 of the Lisbon treaty, after which we have a maximum of 2 years to negotiate our departure. The referendum was not legally binding, and so did not automatically trigger this article.
David Cameron has stepped down as Prime Minister, meaning that the Tories need to elect a new leader. It will be up to this new leader to start the process of leaving the EU. However, there are a lot of pro-EU MPs within the Tory party, and there is nothing to stop them from standing for leadership.
If a pro-remain leader is elected, then they may refuse to trigger article 50 on the grounds that: 1 - it wasn't a legally binding referendum, 2 - 51.2% is barely a majority, and 3 - A lot of people who voted to leave did so because they're either xenophobic or because they fell for a proven lie that was written on the side of a bus.
In order to actually trigger article 50, I'm pretty sure that parliament would have to vote to do so. MPs are likely to vote against it for the above reasons.
Now we come to Scotland, where the majority voted to remain in the EU.
The Scottish parliament are adamant that Scotland will stay in the EU and are doing everything they can to stop us from being dragged out. There are 3 ways in which this can go: 1 - Scotland vetoes the referendum (this has been mentioned, but is very unlikely), 2 - England & Wales leave the EU, but Scotland, Northern Ireland & Gibraltar stay (this will likely be based on how Denmark owns both Greenland & the Faeroe Islands, neither of which are EU members), and 3 - A new Scottish independence referendum will take Scotland out of the UK & we will rejoin the EU.