I think you can get most of the way to where you want to go with the out of the box implementation.

The approach is to not use a Timestamp Pattern but set the File Exists Behavior to Overwrite and Max Archived Files to 2147483647 (or however many files you want to keep). Now when the file is rolled the base file name of MyLogFile.log will result in an archived
file name of MyLogFile.1.log, MyLogFile.2.log, etc. The block inserts the '.' so you can't use an underscore as in your example.

What exact change do you want to make? You will either need to make a small change to the Enterprise Library source code, recompile and use your custom build or create a custom trace listener based on the Enterprise Library source (if you wish -- you could
write your own implementation).

You can take a look at the custom Rolling Flat File Trace Listener sample on the
Enterprise Library V6 Sample Projects page. All of the infrastructure work (configuration classes, resources etc.) is done for you -- you would just have to insert your custom logic in the appropriate location.