Preface: I support unions and the drive towards more unionization of employees
Unionized workers bargained for a specific contract. They can negotiate a new one when the current one expires to include the benefits that others receive.
Starbucks is right, you can't just go around changing the terms of employment to be in breach of a contract. If you're ok with it to gain benefits, the pendulum swings both ways, next time against you to have compensation stripped away.
They bargained for a contract for a reason.
Edit: Starbucks is wrong from the perspective of the ways they actively used this to discourage unionization.
Edit 2: Starbucks was not acting in good faith, which is essential from both parties to have a healthy relationship