You were right the first time Urmstongran
Cameron will go down in history as an arrogant reckless gambler who held a referendum on a very complicated subject that should never have been the subject of a yes/no answer.
Nobody, and I'm not just talking about those who were fooled into voting leave , I mean absolutely nobody, properly understood all the consequences of the UK leaving the EU. Anyone who said they knew exactly what they were voting for is a fool or a liar or both.
Cameron then failed to protect the status quo with a super-majority, as should always happen for any change to a constitution. You would probably need a 60%/40% vote on a minimum turnout of 75% to change the constitution of your local gardening society. In the first Scottish devolution referendum the "yes" side won, but it was not enacted because less than 40% of the electorate voted "yes".
He allowed many stakeholders, such as more than 1 million UK citizens living in other EU countries and over 3 million EU citizens living in the UK to be disenfranchised, although these people could be very much affected by the result.
He permitted the leave campaign to be financed by foreign interests and did not make it clear that under our constitution a referendum could only ever be advisory, not mandatory, making a statement he had no right to make about acting on the result.
Theresa May, in her efforts to placate the extreme right, has badly let down the country but David Cameron started this appalling brexit nonsense and must take the biggest share of the blame.