BusyCal is what iCal should have been. It continues to impress me the longer I use it, and recently I found a way to customize it that I did not know about previously.
Event details, like the one shown in the image here, can be customized from a much larger list than what BusyCal shows you by default. To access the Info Panel Preferences, click the small white "i" at the top right of the Event Info panel. (See item #1 in the image here. Note that you can only access these when the panel is floating on its own, not from the BusyCal sidebar.)
There are 18 different fields that you can use, and most of them are self explanatory (you can see an image in the gallery below), but I want to draw your attention to a few that I find very helpful. The first is "my URL" which gives you an easy way to link an event to a person from your address book. Simply drag the name from the address book to the my URL field and a link will be created (see #2 in image). Clicking that link will open their contact information in the Address Book.app.
You can also drag a person (or business) to the Location, Attendees, My Notes, or Notes field. For the latter two, you get more than just a link to their name, you get address and phone number information (see item #3 in image).
While you could use "Attendees" for the same purpose (and that field is shown by default), when you do that, BusyCal wants to know if you want to "invite" them or send them changes whenever you edit the event. That isn't a feature I ever use, so I didn't want to use Attendees, but my URL is almost perfect.
The "Location URL" shows up right underneath the location field at the top of the image, and it too is linked. You can even drag different contacts to different fields if you want to link more than one to the same event. For example, here I've linked both the bride and the venue information. I linked the venue information into the "Notes" field because that information is synced via MobileMe, and so I had it right in my calendar on my iPad.
You may have noticed that I said this is "almost perfect" and the reason for the qualification is because these custom fields are not synced via MobileMe, which will only sync the basic information. The information is also static. So if you change the address or phone number in Address Book, that information will not be updated in the Notes or My Notes fields.
Despite these shortcomings, I'd rather have some support for it rather than none. I hope that Apple will improve iCal and Address Book, but honestly I don't really expect much. While I would like more full PIM features, including better linking of events and contacts (not to mention Tasks that sync via MobileMe!), Apple clearly sees what they offer as "good enough" for most people.
At US$49 for one user or $79 Family Pack (5 computers), BusyCal is expensive when compared to iCal, which is free, but if you live by your calendar, it will be money well spent. They have a beta version which supports the new MobileMe CalDAV features. Personally I'm sticking with the existing MobileMe calendar until BusyCal support it out of beta, but if you want to use it right now, check out the beta.