1 of 2

Why do sieges work in Westeros?

By my understanding, at the start of the show, summer has been going on for 10 years, this might be wrong though. Anyhow, Petyr Baelish reveals to the small council that Kings Landing has enough grain saved up to last them for a five year winter. This therefore averages at about a 50% surplus.

During the siege of Riverrun the Black Fish reveals to Jaime that they have enough food for two years, so besieging them would be pointless. Looking back it seems obvious that he would have enough food to last them for years. Since winters last for such a long time in Westeros, it only makes sense that each castle would stockpile years worth of food.

So when it comes to a siege, when the main idea seems to be to starve out the defenders, the aggressors would never stand a chance in theory.

So why do sieges work?