If they haven't fixed it by now they never will, tehy have no incentive. I would go over to the shop and demand your scoot back and all the money Geico paid them plus 1 percent interest for each month they have had the money. If they don't give it back right away, call the police.
And about the insurace response, ask them where your money is. They paid him and not you. You had the damage done, not the shop. It should have only been a two party check if it was financed and one neither one of the parties should have been the shop. Maybe you should call the insurance commisioner in your state.