Why don't you care about the other records that are coming back? Is it really sufficient to return some random record for each cuID?

I think tomlinAS is right: distinct is returning each distinct record, not uniq'ing on just the one field, so it isn't likely to work the way you want. You'll need to do a GROUP BY with some innocuous aggregated column - if you don't care which cuID record comes back maybe you can aggregate using MAX(tblLoan.inAmt)?