Heavy Infantry decimate Tribals for the most part, as Heavy Infantry are the core of Feudal Armies and are about 20:1 in strength in Melee Phase vs. Light Infantry. Unless you're fighting Defensive Pagans in their Homeland. Then you need to outnumber them pretty handily.
In this scenario we're talking big advantage numerically, enough that the relatively small numbers of heavy infantry will suffer non-trivial casualties in skirmish phase, as will the outnumbered and also-poor enemy infantry (big morale hit).
The AI isn't so great about picking generals that will use shield wall, further cutting into the relative advantage of small numbers of HI. It's not like someone is running around with 1000 HI on just one front in a battle with 5k.
Or to put it another way: despite the 80% boost to my enemy's defense, this fight was close each time with < 1/5 morale bar for the enemy, close enough that I actually won it on this province outright once in five tries. Now imagine what happens if they have 80% less defense and the same combat ensues.
The problem mainly come down the AI been unable manage all aspect of the commander position properly, it not a bug, it just an annoying quirk.
No. It's a bug. The UI represents something, then something else happens. Unless you hold that UI misleading the player is intentional (and that would be some awful bit of degenerate design, I will give devs more credit than this), it can and should be regarded as a bug. It doesn't matter what the intended functionality of the mechanic is.
If the UI represents X commander is on Y flank, the ensuing battle should not have X commander somewhere else. If X commander is somewhere else with no indication that such will occur, then you have either a UI bug or a mechanical bug. You're asserting the mechanic is not bugged, therefore the UI is bugged.