Using iGraph to build a Distribution Model
NetworkX does have the ability to obtain shortest paths between points for you. As for how you can encode business rules, NetworkX does allow you to manipulate graph objects easily so you could code up a function containing your rules and apply it to to the graph object. 

To model the distribution shift you could give weightings to each shop that would determine how much of the monthly visits they acquire when one of their neighbors close.