The subtle difference in math is the range of possible results. In most cases this is not important, because you are only checking success, which is a binary code: true or false. As skill checks do not have a minimum result, allow negative totals and there are no exceptions like "1 fails", "20 automatic success", the probability of true or false is the same for adding DC or subtracting from the roll.
One significant exception in DnD 3.5 is the craft skill. A successful check result translates to a moneytary value so deducting from the roll decreases the moneytary result of a successful check.
The other difference is much more obvious: bonuses and penalties can stack. A change of DC can come as a modifier (e.g. in the case of the feat spell focus, or several consecutive tumble attempts) or as an alternative DC for a different task. If you got several alternative DC's you have to choose one, but this kind of increased difficulty does not stack.
Example: Crafting a martial weapon is DC 15 (still DnD 3.5), crafting an exotic weapon is DC 18. So this difficulty is increased by three steps. Crafting a masterwork weapon is DC 20. But it does not make a difference if you are crafting a martial masterwork weapon or an exotic masterwork weapon. In case the difference of martial or exotic weapons would be handled by a modifier, this would be different.
In some cases, this leads to strange results. The concentration skill asks for several checks for each kind of distraction:
If more than one
type of distraction is present, make a check for each one; any failed
Concentration check indicates that the task is not completed.
Vigorous Motion DC 5
Grappling DC 20
Weather is wind-driven hail DC 10
So casting a 1st level spell while grappling is DC 21. Casting a 1st level spell while grappling aboard a ship in a hail storm takes three checks, but incurs no negative modifier. So for a caster with a concentration skill modifier of +10 it makes no difference if he casts while grappling or while grappling on a ship in a hail storm. This would certainly be different if stacking modifiers were used to handle the situation.