Thanks for everyone's assistance.
I found that the connection is closing correctly. IIS is the problem.. It is setting the connection session as 'inactive' so that it can use it again but the problem is the report isn't using the same connection again. I just enabled recycling on IIS on a timer and it's cleaning them up as it is supposed to.