Managing rendering targets in XNA using IDisposable
An approach itself is fine IMO, but the API is misleading. Why would SetXXX method ever return something, let alone return an IDisposable? Maybe come up with a better name.