I find this is a hard subject to form a solid opinion on. The inequalities lie primarily within the education system at lower levels. Everyone should have the suport of a good school to help them overcome their economic disadvantage, and schooling should be provided at a standard level across the country. However, this is far from the case. Some schools perform far better than others, and I think it is true that there is a correlation between poorer areas and poorer schools, although this is not always true.
It is clearly unfair to accept students just because they are 'poor' to make the university appear more inclusive. It is an institution that is searching for the best students to obtain the best results for their own reputation. Higher education is a business.
I also agree than 'poor' students might not apply to St Andrews because it involves living out in the vast majority of cases and even because it simply appears 'too good'. Figures such as those outlined in the OP only discourage such people further, along side it's reputation for being a 'middle-class english' feeling place. This obviously offers a motive for their low intake of 'poor' students. Also, the university has quite a small intake from Scotland to begin with considering that it is a Scottish university. A small Scottish intake as well as the reasons for poor Scottish students not applying in the first place will contribute significantly to the small poor-Scottish intake.
There is no clear way to overcome this, as positive discrimination clearly comes with major opposition - it is still discrimination. Really, I believe that an applicants grades should be considered alongside that of their school. This can alleviate the problem of poor shcooling, which often goes hand in hand with poverty itself. However, this does not resolve the real problem - poverty itself. And it does not work to overcome the problems caused by a lack of suport at school level by the school itself - a capable student who achieves, say, BBBC at higher despite being capable of AAAA, but faced with a lack of support, cannot prove themselves to be capable of such grades, and so will rightly be placed at the same level as a BBBC student, possibly BBBB along side a poor achieving school. The problem is far from resolved.
Really, it is quite obvious that StA don't positively discriminate. However, as long as they aren't negatively discriminating they aren't really in the wrong.