Not sure if I am adding anything useful or new, but I just want to say that I was in your position a while ago when I was trying to find someone to shadow. I know exactly how you feel. I want to reiterate what lyana said and ask friends and family members that know doctors. It really comes down to who you know and making connections that will ultimately help make this process easier. If your friend/family has a doctor in their family or they know a doctor really well, explain to them the situation and see if they can help hook you up with shadowing. If not, it's not the last resort. Are you volunteering at a hospital? Ask your volunteer coordinator, some hospital have the same coordinator for volunteers and shadowing, they will gladly help. You can even ask around in the department that you're volunteering in for help. In my personal experience, the first two doctors I shadow were ER doctors at the hospital I volunteered at. I went up to the doctor and ask him if I can shadow him and he was glad that I asked. Remember to be persistent but not annoying. Some doctors will say yes and forget to follow up with you. I experienced this with my first doctor. Kindly remind them in a couple of days if they do. Doctors are busy people, they will forget these things and it's not them trying to intentionally put you aside.
Now for cold calling, it is easier for them to forget about you or say no to you if you cold call them. So I would really use that as a last resort because you will still get some doctors that will say yes, but it's harder to find one. If all the other ways don't work out for you, you can try cold calling. Best of luck to you and if you have any more questions, you can PM me.