The internal balance of shield is not really good, there are few choices that actually stand a chance:
weight 9
requirement 4
hit points 410
body armor 19
weight 6.5
requirement 3
hit points 480
body armor 14
spd rtng 82
weight 11
requirement 5
hit points 550
body armor 14
spd rtng 78
weight 5.5
requirement 3
hit points 250
body armor 22
spd rtng 100
shield width 3
weight 5.5
requirement 3
hit points 410
body armor 12
spd rtng 96
weight 7
requirement 4
hit points 600
body armor 5
spd rtng 76
weight 5.5
requirement 3
hit points 220
body armor 26
spd rtng 100
now consider overlooked ones:
weight 5
requirement 3
hit points 225
body armor 23
spd rtng 100
weight 7.5
requirement 3
hit points 310
body armor 18
spd rtng 87
weight 6
requirement 3
hit points 380
body armor 14
spd rtng 80
The latter, which means most heraldic ones, are just not worth it.
Now considering the gameplay, disc shaped shields are better than inversed tear shaped shield, as they are wider so they protect more from sides (and shooting under and over is less common) they also serve better in melee.
Now consider hp/armor ratio. Consider the side sword wielded by person with 150 effective wpf and PS6. It deals about 58 damage without speed bonus. Consider the same with 2h weapon, lets say katana and dannish longsword. First with mirror setup (2h and Poles have generally better stats than 1h, but it's not really relevant here), they deal 66 and 73 respectively.
armor_soak_factor_against_cut = 0.8
armor_soak_factor_against_pierce = 0.65
armor_soak_factor_against_blunt = 0.5
armor_reduction_factor_against_cut = 1.0
armor_reduction_factor_against_pierce = 0.5
armor_reduction_factor_against_blunt = 0.75
It means, that side sword deal 31 each time it strike so need 16 hits to break Norman Shield and 18 to break Heavy Board Shield, assuming he didn't hit with some hitbonus. Against Katana Norman last 14 and german need 12, board more. Now take high armor shield, 22 armor: Against Side Sword elite cavalry last 14 hits, against katana it's 12 hits and german chew through it with 10. Huscarl in such cases would last 16 against side sword, 14 against katana and 12 german (all aprox and considering shield low shield skill as high is not really useful those days). So high hitpoint shields are generally better than high armor shield even against weapons that are not intended to destroy shields, those shields also benefit more from high shield skill if i get the formula right (soak then reduction then shield skill), and fare better even against 1h weapons with no bonus to shield.
All things considering, buff shields with worse stats that have similar price. For example Kite shield is way worse than Norman shield, and Other cavalry shields are worse than elite and heather.
Also, make heirloom bonus percentage increase, not set increase.