You are correct that the Heroic ability does trigger and successfully resolve, but your understanding about how and why it does is a little off.

Fist of all, there is only one Stack. The Stack is a game zone just like the Battlefield or Exile, it is always there even if there are no abilities or spells in it.

So what happens when you cast Divine Favor is you finish casting it targeting Tethmos High Priest and put it on the Stack. Then before either you or your opponent have a chance to do anything the priest's Heroic ability triggers and goes on the Stack. When you put the Heroic ability on the Stack you chose the target you want to return to the Battlefield. Once the ability is on the Stack and you pass priority your opponent has the opportunity to cast Negate, so the Stack now looks like this:

>(top)

>1. Negate (targeting Divine Favor)
>2. Heroic ability (targeting something in the Graveyard)
>3. Divine Favor (targeting the High Priest)

>(bottom)

When the Negate resolves it will counter the Divine Favor, but as you can see the Heroic ability is already on the Stack, so it doesn't care that the reason it triggered isn't there anymore, it will still happily resolve.

This is a generic case for all Heroic abilities, they only care that they were targeted by a spell, what happens to the spell after that doesn't matter.