My daughter and her husband a 4 children live 15 miles away, (in the UK) but because I don't drive, and local buses are scarce it can take me between 1 and 3 hours to get to her. With all 4 children in 4 different schools, a husband who works early hours and all of us with very busy lives, I visit once a fortnight, sometimes more often for school events and concerts, shows etc, (My 11 Yr old GD is a semi professional singer/dancer)
It's an arrangement that suits us and I'm sure that once your son has settled into his new life you'll be able to visit to see their new home, and of course, they can always visit you during school holidays. 3000 miles is a huge distance but maybe you could discuss meeting somewhere in the middle for a long weekend.
I cried buckets when my daughter moved 9 years ago but we've worked out a visiting plan that works for us as you will.
Tears are good, but so are smiles and hugs. So smile through your tears, hug them all then wave them off with your best, (fake) smile, go home and cry into your favourite comfort snack.
Maybe start writing a letter you could send, maybe once a week, to your son fill it with little snippets and photos, just to stay in touch. Send your GD a card or short letter of her own, again with little items of news and the odd photo. Something she can treasure and look forward to.