Duplicate values in dynamic sorting

I have an issue with duplicate sorting values for a formula in Google Sheets. I’m using two tables to order 10 scores (see pic). The values in Column D are dragged from another sheet. The values in Column B have a simple RANK formula based on Column D:

=rank(D4,D$  4:D$  13) 

The values in the second table are based on the first in order to dynamically order the second table.

Formula in Column G using an INDEX and MATCH:

=index($  C$  4:$  C$  13,match(H4,$  D$  4:$  D$  13,0),1) 

Formula in Column H uses a simple LARGE formula:

=large($  D$  4:$  D$  13,1) 

Which all works fine until the values in Column D are the same and the formula in Column G repeats the first value it comes across in Column C (see attached file).

Anyone have a solution for when there are duplicate values in dynamic sorting?

enter image description here

enter image description here