The Prime Minister made clear his party would not accept money from a "Putin crony" but stressed Lubov Chernukhin "certainly wasn't that".
Her husband, also called Vladimir, was a finance minister in the Putin government but was sacked in 2004 and has since fallen out with his former boss. The Chernukhins are now British citizens.
Earlier this month, Mrs Chernukhin handed over the £160,000 after winning the prize lot in a Tory fundraiser to play a game of tennis with Mr Cameron and Boris Johnson, the London Mayor. The fundraiser, held in the UK capital, was said to have raised £500,000 for the Conservatives' General Election campaign fund.
Pressure intensified on the PM after Mr Johnson, asked if he would withdraw from the tennis game if it turned out the donor was indeed a "Putin crony", replied: "Of course."
But in Glasgow, Mr Cameron insisted returning the £160,000 was not "the right approach" because Mrs Chernukhin had "lived in Britain for many years" and was now a British citizen.
Chris Bryant for Labour, which called on the Tories to pay back all £900,000 in donations from people who might have links to the Russian Government, said: "Since 2010 Cameron has repeatedly misread Russia. He has wanted just to do business with Russians and take Russian money but there's a black heart at the centre of the present regime. The Tories should give the money back."
A Conservative spokesman responded: "All donations to the Conservative Party are fully and transparently declared to the Electoral Commission and published on their website."