The problem here is that sometimes the holiday will appear twice (when the observance is different from the regular date) and sometimes it will appear only once. It may look as if you may need to do some manual editing, but that is not the case. The solution is to use 2 holiday rules and judiciously use the delete if conflict option.
We will cover 2 contrasting examples; one when the observance is almost always the same as the holiday's date, and one where it is almost always different.
Japanese holidays are almost always based on a fixed date, but if that date is a Sunday the holiday is observed the following Monday. So most of the time you will only have the holiday appearing once. Take for example "Culture Day" which falls on November 3rd. First create a fixed holiday named "Culture Day" which always fall on November 3rd. Then create a second holiday named "Culture Day (Observed)" and set it also to November 3rd, but add the options to "move to Monday if it falls on a Sunday" and to "delete if conflict". The result is that the second holiday will almost always be deleted because it conflicts with the first. The second holiday will only appear if the first holiday falls on a Sunday.
Columbus Day (USA) : officially occurs on October 12th, but most people only remember the observance which is the second Monday of October. Yet some diaries need to show both the official date and the observance date. To handle this case, create a first holiday named "Columbus Day" which is fixed and occurs on October 12th. Select the option "delete if conflict" for this holiday. Then create a second holiday named "Columbus Day (Observed)" which is variable and occurs on the second Monday of October. Most of the time both holidays will appear, but whenever October 12th falls on a Monday, then the first holiday will disappear.