Your best approach is to use alpha channels to build a perfect mask (maybe you can find an online tutorial). But, that is a more advanced approach. So something simple to try would be to use SELECT > COLOR RANGE on the blue background. Then tweak your mask with the MASK panel (especially, the mask edge command).
Filter > Extract will work but you will probably have to use a Stroked Path to assist the filter.
This is a bit more difficult than it appears because of the transparency of the sunglasses, the color spill and fringing. I used the Calculations command to create a Channel mask then placed a flag on a lower layer.
Future Man wrote:
Best way to remove the blue background and make it an American flag?
Agree with the others, alpha mask from a channel. Do a search on Channel Mask and/or Channel Mixer. Russell Brown used to have a good QT movie on doing it.
Step by step
Look at Red Green and Blue Channels and choose the best one
Copy one like the blue channel and make a good mask don't try to make if perfect yet
Convert the Background Layer to a normal Layer and add a layer Mask containing the mask you made.
Under the layer you can add sayers of various colors to see hoe much blue fringe there is.
Add the Flag you want. You can target the layer Mask and paint on it to remove some blue fringe.
If you still have some blue fringe you can add an empty layer over your image and copy your modified layer mask to that layer also the on the empty layer pant with color over the blue fringe to hide it http://www.mouseprints.net/old/dpr/hotshothi.gif
Or, use LAB and blend if sliders. Notice star showing through sunglasses. I did use a mask to cover flag showing through blue highlight in the neck area.