Hi, we are looking to spend 2-3 days in southern Michigan along the coast line. It will only be me and my husband-no children. It looks like there are great wine tours which we will definitely partake in but I'm having trouble deciding which town would be the best for us to stay in. We're looking between New Buffalo, Union Pier, South Haven, and St. Joseph. We will definitely want to spend a day on the beach and a day around town so which town has the best beaches and best shops/dining? We were pretty set on New Buffalo until I started seeing some mixed reviews on the beaches (rocky, e.coli contamination in the water, dirty beach, etc.). It is hard to tell from the internet which town holds the most character/things to do. Any input would be greatly appreciated! Thanks in advance!