Holders St Mirren were dumped out of the Scottish League Cup after a shock 2-1 defeat to Queen of the South in Dumfries.