David Cameron has dismissed criticism of his handling of the refugee crisis by saying no country in Europe is doing more to help than the UK.