There is something hugely admirable in Angela Merkel’s determination to stick to her refugee policy. She has defended it for two years straight in the German political arena and is beating no retreat as she campaigns for a fourth term in next month’s general election. Through a punishing programme of election rallies and interviews, she has insisted that the stand she took in 2015 was the right one for Germany, and she has no regrets. Faced with a similar crisis, she would take the same decisions again.

Merkel: no regrets over refugee policy despite political cost Read more

Her stand draws anger and cries of “traitor” from some of the crowds she addresses – though she points out, rightly, only from a very small minority. And it is also true that while she takes the moral high ground and German national interest in all her public statements, her government has quietly limited some of this generosity. There are moves to make the whole process more efficient and speed up the return of failed asylum seekers. The terms – including length of stay and family reunion – are more restricted than they once were. Merkel is also calling for the distribution of asylum seekers among Germany’s individual states to be fairer, and there is official acknowledgement that integration and getting the many new arrivals into employment will not be easy.

But the German chancellor is not, as any electoral candidate might be tempted to do, stressing the restrictions over the ethics. Still the parson’s daughter, perhaps, Merkel is accentuating the positive and campaigning on the moral high ground. Then again, what choice does she really have? Any admission of regret or misjudgment would be seized upon by her opponents, chief among them the Social Democrat candidate, Martin Schulz, as evidence of her fallibility and unfitness to remain in office.

AfD candidates are also articulate and effective in their media appearances, without coming across as extreme

With less than four weeks until the election, Merkel and her centre-right CDU-CSU alliance look unbeatable. Opinion polls give them 38%, compared with 22% (and declining) for Schulz’s SPD, with the free-market FDP, the Greens, the far-right Alternative für Deutschland (AfD), and the far left Die Linke a long waybehind. The question, though, is not whether there is a silent constituency waiting to punish Merkel for her asylum policy – there clearly is – but how big it is, and whether it could spring a surprise at the ballot box.

Germans cannot complain about having no choice: the messages of each party are sharply differentiated. Die Linke wants more social security; the CDU-CSU boasts of the strong economy and wants stronger German defence. The SPD wants to address Germany’s largely hidden inequality. In a television interview at the weekend, however, Schulz also took a conspicuously more aggressive and personal approach, accusing Merkel of losing touch with ordinary people, cosying up to the unsavoury regime in Turkey and not doing enough to ensure other EU countries share the asylum burden.

Martin Schulz: social justice, no nukes ... and no match for Angela Merkel Read more

The only party focusing directly on migration issues is the AfD, which has some hard-hitting adverts, including one showing a heavily pregnant blonde woman, with the caption: “If we need new Germans, we can make them ourselves.” Their candidates are also articulate and effective in their media appearances, without coming across as extreme.

No one is suggesting that the AfD could decide this election. The German public is well-inoculated against extremes, especially from the right. But with 46% of voters said still to be making up their minds, concern about asylum, migration, integration and related issues is bubbling away mostly beneath the surface, and it is not certain that Angela Merkel’s personal “values agenda” will necessarily win the day.

• Mary Dejevsky is a writer, broadcaster and former foreign correspondent