I don’t really care too much about the "secure" form for paypal. I don’t think it will matter too much for a small shop whether you are using the secure button. The workflow <i>is</i> aweful.
With regard to donations. If you are using the snippet (which I have never used, ever) you’ll need to modify it to output a field for the donation amount change the form type to donation. There are other fields you should set as hidden fields.
As I mentioned before there is a form for donations on the main modxcms.com site here:
http://modxcms.com/download/downloading.html?file=398 that has a donation form on it. (Go ahead and donate while you are there if you want
)
You can see all you need to change is the email address and the account id. everything else stays the same.
Paypal is not meant to be hard or require any more than copy and paste. In most cases I stick the paypal code in a chunk. Use a TV for the price, item name and description and everything else just works.
BTW for the secure code you can also just put the URL in a Chunk and the button ID into a TV and swap that out but it means that you will have to login to paypal, create the custom button and then get the button ID. That is a pain and a waste of time. If you are doing a lot of business you are always better off with another cart/gateway like FoxyCart and Authorize.net or some such (not endorsing other than haveing experience with).