Well, I can tell you where you don't want to be... Roche Harbor. They do a HUGE celebration that goes on all day. There are so many boats anchored out, you can almost walk across the harbor on 'em.
My perspective may be slanted, since I have worked out of Roche the last 3 years on the 4th of July. Drunk people driving dinghies all around, drunk people on the docks, people ignoring "Do Not Tie Off Here" signs (when all I want to do is get the boat back to our dock)... oh, and did I mention: drunk people everywhere?
Friday Harbor does a nice parade, a rock band at the parking lot (costs to get in, but you can hear it all over the harbor), and a nice fireworks display when the band is done.
FIsherman's Bay on Lopez generally gets the nod for best fireworks, but you can't go wrong at any of the places mentioned in this thread. I will guarantee you that all of the venues will be packed... so, if you are anchored out, make sure your boat is well-lit. If you can find dock space at any of the marinas at this point, it sure is nice to go climb into your berth when the fireworks are done... and be reasonably sure you aren't going to get whacked by... yeah, some drunk.