I think that the ToodleDo docs are a bit lacking when they recommend escaping the & and ; characters. Because all the data is glued together into a single Get request for this application, and is part of a URL, I think the whole value needs to be URL Encoded.
ie)
public class TextEncoder {
public String encode(String original) {
return java.net.URLEncoder.encode(original, "UTF8");
}
}