What most likely happened is this:
1. You had a stack with 1 hero, 1 flying unit and X normal units
2. You move to an Anchor. X normal units gets converted to ships. Hero does not get converted, as he is counted as flying.
3. You move your stack on the sea, top unit is most likely hero icon, not the ship icon, because your hero is still a land unit, only enable to move on the water as he is either in company with the flyer, or in company with the ships. If you left him alone there he would drown at the end of your turn (doesnt happen a lot, but I have added functionality for it
)
4. Now for some reason the flyer moves away from the stack (or dies in battle or something)
5. Your stack is now containing of a hero (still in land mode, as you can only change sea/land mode on an anchor), and X units in Sea-mode.
6. The stack now moves to an anchor (as it wants to move into land), moving to the anchor converts all land mode units to ships (i.e. the hero, as he is not counted as flying anymore), and all sea-mode units to land (i.e. all your X standard units).
7. This leaves you where you are now, and suddenly you have a ship icon showing on top of your stack instead of the Hero icon.
So what you could have done before moving to the anchor (if you had known the hero was in Land mode still) would be to move your ships to the shore, and then only selecting the hero from the stack he would have been able to disembark onto the land, since he is a landunit, and then the rest of the units could sail to the anchor and convert themselfs.
So this is actually all intended functionality. And I think it opens up a bit more strategy as to how to transport heros and how/where to disembark with them. But I agree that the visual input is a bit bad, as you dont know what unit is in what mode (Land/sea) when selecting the stack out in water. I think we will try to improve that with some extra icon in the select row to beta3.