First, the flag you see is not the flag of the Confederacy. What you see is called the "Confederate Battle Flag". Very few people would recognize the real Confederate flag, even people in the South.
Today, it is an open sore that remains a point of contention as to what it means and the reality is, it means different things to different people. There is little doubt that to most African Americans this is a flag that is a symbol of slavery and racism. End of discussion. To whites, however, it is a good deal more complex. First, remember, at the beginning of the Civil War the North was not fighting to free the slaves and the South was not fighting to keep the slaves. It was Lincoln who changed the vocabulary of the war half way through. For most whites in the South the flag they show is a statement in regional pride. It has, for them, absolutely nothing to do with wanting to go back to the old days of slavery. Most whites in the South never, ever, owned slaves, not even one. (and by-the-way, there are some blacks who did own slaves ... check out William Johnson or Natchez, he's one of many). For a person from the South, a defeated area, it is a matter of pride to have a Southern flag, just like for many African-Americans they wave a pan-African flag, even though it was their own people who sold them into slavery, it was Africans selling Africans. Still, it is a statement of personal acknowlegement of who you are and where you come from.