The problem can happen if your stacks are small compared to the ones of the enemy, because the engine pick an enemy stack to strike at, every round, for each stack. So this can lead to some heavy hammering, if one stack is big and the other is small (the pick is not random and take into account your size and the size of the target, but there is some random factors).
You can rationalize that by saying for example, if you created a one-brigade stack, that it is in forward position, or on a flank, and a whole enemy corps smashed into it, so during the whole round (2 hours of battle), then the brigade have to support quite an assault... and thus take very heavy losses.
Generally, this is the cause of the 'problem' you perceive: the engine function with a stack picking its targets (in term of units) in a single stack (but it can changes stack each round)...
Then we could discuss how units are picked among a given stack, and then further ahead how elements are picked among a unit, either as elements of your to be engaged, or targets to fire upon... this is complex and intricate
