I think I have found the cause of and solution to the problem.
It seems to be a difference in synchronization capability between Palm Desktop and either Intellisync, Outlook or the BB itself.
Every single one of the 168 appointments that Intellisync wanted to sync (each way) had a hard return (line feed) in the event name field, ie:
Using carriage returns in event names wasn't a problem on the Palm Desktop or PalmOS. It made for greater readability. That doesn't seem to be the case with either Outlook, BB or Intellisync (I'm not sure which one is the culptrit, but I'm leaning towards Intellisync).
Just to recap, I took zerog46's advice and wiped out the BB calendar again, made sure the BB calendar was set to "keep for ever" and the sync was set up to "transfer all items". Then I did a one-way sync from Outlook to the BB. Both calendars now contained identical information. Using the above event as an example, when I checked my calendars immediately after the one-way sync, the event existed properly in both calendars, exactly as listed above.
Then I reset the sync settings to normal (synchronize) and initiated a sync. As expected, Intellisync reported 160 additions and 8 changes from BB to Outlook, plus 160 additions and 8 changes from Outlook to BB. In all cases, Intellisync wanted to copy a truncated version from the BB-->Outlook, and a complete version from Outlook-->BB.
It seems as though when Intellisync reads the contents of Outlook, it can handle the returns, but it not when it reads the BB calendar. Instead, it truncates the entry to a single line. Then it sees the results as two different events and wants to sync them back to each device.
I've just finished manually editing each of the 168 events in Outlook, eliminating the hard returns. When I get home tonight, I'll go through the wipe/import process again and then try a normal sync. I'm willing to bet that it won't find anything to do this time.