I do not think its your sling, but your zero. When you say "lower than they should be", I think gravity is your main problem.
What I suggest is sand bag the rifle at 300 and determine your actual come-up for this range from the bench, given as you said "you are using a dead on 50 yd zero" to shoot accross the course, but holding over at 300.
Then repeat prone (again, support forend on appropriate height sand bags).
If you dont have a range adjustable rear sight, keep track of the front sight elevation clicks from your starting zero.
This is what we did between the 200, 300 and 500 yard lines during re-qual with the M16A1. That is why everyone hated the front sight post being the only way to correct for elevation range changes if one wanted to shoot point of aim = point of impact.
I also think holding "center of mass" is much more precise and repeatable than subjectively repeating, say 6-inches of hold over, at 300.