Hi
Thanks for your request. Most probably, the problem occurs because wrong culture is used and values are compared as strings. If specify culture where decimal delimiter is dot, then everything works as expected. For example see the following code:
Locale L = new Locale("en", "nz");
Locale.setDefault(L);
Document doc = new Document("C:\\Temp\\in.doc");
doc.getMailMerge().execute(new String[] { "test" }, new Object[] { 4.21 });
doc.save("C:\\Temp\\out.doc");