Think about this from the perspective of your viewmodel not in terms of the controls in your view...
Bind the SelectedItem property of the listbox to a new MySelectedItem property on your viewmodel and then you can do it all in the viewmodel without any commands.
For instance you might iterate through the collection of items in your viewmodel that are bound to the ItemsSource of you listbox and then assign one of them to your new MySelectedItem property, and automagically it will show up as selected in the UI.
As an an alternative you can also bind the IsSelected property of EVERY ListBoxItem to a new MyIsSelected property on each object in the collection. Same end result... use whichever approach suits you situation and/or taste...