An aside back-tracking to force feeding: It's generally only done as a last resort because it is very stressful. It can get an animal eating again, but it's critical you are very careful and comfortable doing it in order for it to succeed. Also, don't beat yourself up. If you've kept this gecko for three years and this problem is just now occurring you aren't failing. Even the most experienced keepers still have to contend with illnesses from time to time. One of your best bets is also to try and figure out what changed around of before the time this happened. If it's environmental, something around that time was altered. Are you 100% positive the gecko has eaten nothing in 3 weeks? Sure some snakes or amphibians can go that long without food, but I'm fairly certain a lizard would already be a goner without food for that long. You can try Exo-terra vitamin D3/Electrolytes in the water dish and soak the gecko to help combat potential dehydration. Have you considered the possibility of an impaction? Have you noticed any changes or abnormalities on the gecko's skin?