When using Scikit Learn Grid Search, why are my train and cv scores high, but my test score is a lot lower?
Here are some ideas of things to try:

I would try to investigate the problem by not using the 'refit' option. Run the Grid Search CV yourself, obtain the best parameters and train a new model on all of the training data after you input those best parameters. This is just to  make sure there is nothing funky going on with SKlearn.
Try using another metric for classification like AUC and see if there is any difference.
Also, it might be helpful if you provide more information about your data, such as the type of outcome and the type of predictors you are using