My sister went to a Spanish language immersion school last summer for 4 weeks in Cuernavaca, Mexico. It was a very good experience for her. The tuition (with lodging) was maybe $1500, but it included just about everything. Each class has only 4-6 students each. They also have classes geared towards professionals, including law enforcement. She chose this school because a coworker had taken a 3-week course and recommended it.
The students live with a school-approved host family who are allowed to speak only Spanish to their resident student. My sister really enjoyed her host family; they included her in all their family gatherings. They had a beautiful home that was a short walk from the school. Students select their host family based on the amenities and distance from the school. I think private lodging is also an option.
There are a lot of extra-curricular activities available (extra cost, I think), such as field trips to ruins, museums, galleries, cooking classes, dancing classes, etc. The school encouraged a lot of social activities to help students learn the culture and to practice conversing in Spanish.
The school is called Chac-Mool, and their website is very informative. My sister got a lot from the course, but she said she should have stayed for a couple more weeks.