Not sure if you already found out, but based on
LazWeb description, difference between (F)CGI and Custom(F)CGI is that Custom does not use TFPWebModule object in application. You can see this difference right away after you create project.
If I'm not mistaken this is just an abstraction layer which makes CGI programming much easier. Maybe somebody who has experience in Lazarus CGI programming can describe this in more details.
"The program source is automatically maintained by Lazarus" is about source of your program and Lazarus/FPC units. Exactly the same like any application in Lazarus.