Aruch Hashulchan, OC 188:18, cites a difference of opinion regarding the following case. On Shabas which is rosh chodesh, someone says the Shabas addition in birkas hamazon (grace after the meal) but omits the rosh chodesh addition. (The case is actually more closely circumscribed than that; see e.g. :20.) Some say he must repeat birkas hamazon because he was required to eat and thus say birkas hamazon, which he didn't do properly, and others says he need not and thus must not repeat birkas hamazon because his requirement to eat didn't stem from its being rosh chodesh. Because of the difference of opinion, the Aruch Hashulchan concludes: "a doubt about benedictions — be lenient" and don't repeat birkas hamazon.
Yet, in 490:2 and :5, he says as follows: Someone who omits the chol hamoed addition to birkas hamazon should not repeat birkas hamazon; and, on Shabas which is chol hamoed, someone who omits the chol hamoed addition but says the Shabas addition should repeat birkas hamazon.
Why is that latter case different from the rosh chodesh case? It would seem to be subject to the same difference of opinion and one should therefore not repeat birkas hamazon.