What factors might explain the apparent shift from controversy to acceptance over the years in regards to the 1966 ruling of Miranda?
First of all, it is not correct to say that the Miranda ruling is accepted today. Especially with the more conservative Supreme Court that now exists, Miranda has been chipped away with more and more exceptions being made.
The most important reason that Miranda was accepted to the degree that it was is that the Supreme Court was relatively liberal for much of the time between 1966 and today. Because of this, the Court was relatively willing to uphold Miranda and an expansive view of 5th Amendment rights.
A second important reason is that Americans have generally come to see that the Miranda ruling has not completely sabotaged law enforcement's ability to act. Because of this, opposition to Miranda has been at the margins -- trying to narrow the ruling, but not to completely do away with it.