The Apache XML FOP Project utilizes XML based stylesheets written to the XSL-FO schema as the input to render as output any of a variety of document types, but most commonly PDF. ColdFusion MX can easily be used to generate dymamic content in a pre-defined XSL-FO stylesheet, where the stylesheet is then transformed by a FOP servlet to produce they customized PDF as output to the client. From the Apache website, FOP is described as:

FOP (Formatting Objects Processor) is the world's first print formatter driven by XSL formatting objects (XSL-FO) and the world's first output independent formatter. It is a Java application that reads a formatting object (FO) tree and renders the resulting pages to a specified output. Output Formats currently supported include PDF, PCL, PS, SVG, XML (area tree representation), Print, AWT, MIF and TXT. The primary output target is PDF.

Here's what I did to generate my own dynamic PDFs with ColdFusion MX: