Some problems ask you to compute an answer for each subtree, then merge those answers as you move up the tree. Think of it as combining children's results to get the parent's result.
If merging two subtrees takes linear time in their sizes, naive DFS gives total time. You will TLE on large inputs.
Small-to-Large merging fixes this by always merging the smaller subtree into the larger one. This guarantees total work across the entire tree, even though individual merges might be slow.