I think the heart is involved some way or another. Moses and David were shepherds -- and their sheep had to trust them. If Jesus is our shepherd, we have to trust him in our hearts.
Let me take up the matter of Jeconiah now who was meant to be a shepherd for God's people and wasn't.
Jeconiah was wicked. He was not the "seed of David" except in the physical sense. His heart was corrupt, and God passed judgment. What that passage doesn't tell us however is that he repented after being carried off in captivity in Babylon. (I don't even know if that's in the Bible; but I know the Jews say he repented.) The curse got removed; and there is a clue when the word signet is used again:
Haggai 2:23 In that day, saith the Lord of hosts, will I take thee, O Zerubbabel, my servant, the son of Shealtiel, saith the Lord, and will make thee as a signet: for I have chosen thee, saith the Lord of hosts.
When Jeconiah repented, he became again a son of David spiritually as well as in the flesh; and his son was a son of David too in both ways.
Remember the Jews who said they were children of Abraham and Jesus said they weren't?
The three kings omitted by Matthew were also wicked, not true sons of David spiritually. I love the story about Jeconiah since it shows that curses aren't eternal. People always have the chance to change. When I first read the passage in Jeremiah, I mistakenly thought the curse was eternal, forgetting the Mercy of God.