Norm had some good recomendations. The Germans will have higher repair costs and more problems along the way. I don't see how it's worth it to buy such an unreliable SUV for cheap and spend a lot of money fixing it. Unless you get a Lexus, Acura, or Buick, definitely get a LONG extended warranty. I've heard good things about Carmax's warranties, but their cars are generally more expensive than a dealer.
Mercedes GL 450 ? You could afford a 2007-2009, but that car will be a nightmare. You would need to sell it when the warranty expires to avoid paying $5000 a year on repairs. It would be the oldest option with the most miles, but it's luxurious.
BMW X5 ? The newest one in your budget is 2011. Another reliability nightmare. Not as good as the Audis.
Audi Q5 ? The most reliable German car on your list, but that's not saying much. Newest year under $20k is 2012. This is my #1 pick for the German SUVs on your list.
Audi Q7 ? Won't be reliable. You could get a 2011. Handles well for the size and is luxurious.
Cadlillac SRX ? Although outdated for the time, it's interior was pretty nice. Comes with the dreadful CUE infotainment system. Reliability was better than the Germans, although still not good. Repair costs are lower than the Germans.
Lincoln MKX ? Taking a chance with reliability. It's a nice car, but it has MyFordTouch, which was problematic.
Also consider:
2010 Lexus RX 350 ? It has the softest ride and a quiet cabin. The interior is nice and best of all the car is reliable. It's a luxury SUV that you won't have to spend $5000 a year on for repairs. The downside is that it doesn't have the fun to drive character of the Germans. It's a softer car; softer ride, smoother powertrain, softer handling, softer seats. Also, Lexus have low depreciation, so it might be outside your budget.