While I think Walgreens is perfectly within its rights to fire this pharmacist, I disagree with your above statement.
First, pharmacists do not “decide what drugs to prescribe” and the certainly do decide what to sell. Pharmacists fill prescriptions and sell them to the customer. As medical professionals, they have a duty and right to refuse to dispense prescriptions that, in their professional medical opinion, put the patient at risk. If a prescriptions is given for a drug that is contraindicated, the pharmacist has the right to refuse to dispense that prescription. And, depending upon the state, if a prescription is ordered for use other than its published use, has the right to refuse to fill the prescription.
I’ve posted on this numerous times. I have a college buddy who is a PharmD that owns his own pharmacy. He isn’t Catholic, so doesn’t share the same reservations about contraception, but he did absolutely refuse to dispense PlanB in his pharmacy, until the state supreme court decided that his sincerely held religious objection to abortion inducing drugs didn’t matter. And he always calls the doctor when getting orders for certain drugs that are known of off-label use, such as methotrexate and wellbutrin.
Pharmacists are more than just drug vending machines. They are medical professionals. We should treat them as such. As for Walgreens, they are free to make their own policies. If their policy is that contraception should be filled by whoever is on duty, then they should do so. Though I am surprised they don’t have a policy to allow those with religious exceptions to have someone else fill the prescription.