Is it ok to wait around for new units?
Solution 1:
If you spend longer on a campaign map, you will get a lower score, so that is one potential negative.
Also, you have to make sure that you army is growing faster than your enemy's, or you will never get to a point when you can beat them. The simplest way to do this is to look at the difficulty of a particular enemy you want to defeat. If that difficulty ever decreases, your army is probably growing faster. Similarly, if it ever gets more difficult or it stays the same for a long time, then the fight probably will never get easier.
I used this strategy in the first Necromancer campaign mission on Normal difficulty with the following results:
I maximized my own creature growth by capturing every creature producing building I could, building every building in all of my towns, and keeping a hero that increased Ghoul production in one of my towns.
I minimized my opponent's creature production by occupying his creature producing buildings (though I am not sure if that was effective)
I waited for units for at least a few months.
After that amount of time, my opponent's difficulty still showed as Hard (it had changed to Severe once, but then it changed back to Hard and never went down again), but when I fought him I won the battle without too much trouble.
This implies that the opponent's displayed difficulty can sometimes be a useful heuristic, but it is not a definite indicator of relative army strength.
If the enemy is sending heroes to kill you, remember to stay in your town to take full advantage of your fortifications, and remember to pay attention enough to buy units before you get attacked or you might get surprised by a superior force. If you can make him sustain a lot more losses, you might be able to gain an advantageous position faster.