It's difficult to say what the exact formula is for a successful party. Some of this is more art than science. But a big part of it is that guests must have improved social, hunger, fun, etc. mood levels when they leave than when it started. It doesn't matter so much if you talk to your guests or argue with them (though I wouldn't necessarily recommend fighting) and the lot looks pretty to them, although those are a good start, it matters what the sims manage to do with it all. I find that encouraging group activities -- dancing, games where 2-4 sims can be involved, hot tubbing, etc. tends to work out better than greeting them and leaving them to make their own fun.
For parties that have a specific purpose -- birthdays (no cake age-up = failure), weddings, exchanges of presents for Snowflake Day, an important meal for the harvest one, the sims must notice that the purpose has been fulfilled or the party will always be a failure. On the wedding one, it does sound like the Leisure Day pushes to go swimming and just relax were overwhelming the pushes to watch the wedding ceremony, so as far as the sims swimming were concerned, they left the lot where the party was officially to be in the water before they got to see what they came there for and were really only "at" the party for a very short time. Not sure what the intended goal of a Spooky Day party is, I haven't thrown one of those in years because I too often get costume failures of some sort that cause the party to just evaporate before it's really begun.
On the one where no one showed up, sometimes that means they were busy someplace else in the world at the time and sometimes it indicates bad routing on the world lot. One way around that is to invite some or many of the guests over socially so that they are already on the lot one sim hour before the party is scheduled to begin. That way they can't all be "too busy" to bother showing up.