Just to add my own story… I’m from the suburbs of Boston, with two parents from Southie (the South Boston neighborhood, for you non-locals). Most people from my town and surrounding area have a Boston accent, as does my father. My mother doesn’t. My sister, who tends to take after my father, has the accent. I, who tend to take after my mother, don’t.
I still cringe when people mistake a New Yawk accent for a Bahstin accent, and I can affect the accent whenever I choose, I just don’t use it in normal speech. (Except in the word “drawer”, which I pronounce “draw”. But ever since I became aware of this, I’ve done it less and less…)
I sometimes hypothesize that I don’t have the accent because I like to blend into my surroundings. (I’m good at picking up other people’s accents, too, which adds to the theory.) This makes sense when I’m in Ontario, but I don’t slip into the accent when I’m home, either – perhaps because I mostly associate with people who don’t have the accent.
This leads me to speculate why some people don’t have the accent, and I’m usually led to assumption that the people I speak with are more educated. Even my father, who has a graduate degree and works in professional circles, loses his accent when he’s speaking to business associates/clients. I don’t think this is a conscious decision on his part.
I don’t mean to imply that people with a Boston accent (or any!) are uneducated, or anything of the sort. Rather, people who are even subconsiously aware of how they’re speaking (e.g., in formal settings) and the effect, may revert to the accent known as “General American”. (With folks on the other side of the Atlantic reverting to “Received Pronunciation”.)
That’s a loose working theory, with far too many assumptions and inconsistencies, and not intended to be derogatory in any way. It’s just what I’m sort of thinking at the moment.