De façon générale, si tu fais un séjour linguistique (peu importe l'organisme), veille à:
- Te fondre dans la culture (i.e une fois sur place, ne pas rester avec des francophones pour te forcer à parler anglais)
- Aller dans une ville ou un organisme où les français ne sont pas sur-représentés
Et sinon, plus longtemps tu restes, plus tu progresses.
Cela dépend de ton niveau actuel, mais 3 semaines ça me paraît pas beaucoup.