I think the whole "sharing" thing gets out of hand sometimes.
If a toy belongs to the school or to the playground, then children need to share with each other. In this case the toy does not belong to either child so it must be shared as "equally" as possible.
A toy that belongs to a person such as your child or another child is their property. It does not have to be shared.
How would you feel if you were on your cell phone and some stranger came up to you and wanted to play games on it and you were FORCED to let them? Would you appreciate that? Would you want some stranger playing on YOUR cell phone? Heck no! You bought it, you paid for it, you take care of it, it's yours. If you choose, out of the kindness of your heart, to let someone use it, then that's one thing.
Children MUST learn about ownership and personal property. It's a hard concept. Those who don't learn this can grow up feeling "entitled" to things that belong to others. That's how you get a child that "steals" but doesn't do so maliciously. He or she has never learned about personal ownership.
I would calmly explain to your son that the toy belongs to someone else and that person does not have to share. If your son is upset, then remove him kicking and screaming. Do it as many times as it takes.
Some toddlers can't be brought to the store because they want everything and don't understand that they can't have it. Eventually they learn.
I think forced sharing of one's personal property is a violation of that person's ownership, no matter how old they are. An adult would NEVER appreciate being forced to share their clothes, home, iPods, gadgets, etc. with a stranger--so why would we force that upon our kids?
We can certainly teach our kids to be generous and kind. But generosity and kindness can never be forced.