The cause of the ugly error is setting the background color to black. This is being interpreted different regarding which shell you use. For instance, on my bash, the background is grey with the same pattern as you reported as wrong. I was able to fix that banner by throwing out the explicit set of the background color (remove all ;40 from the file). That should be more consistent anyway, since there were already transparent parts.
The cause of the ugly error is setting the background color to black. This is being interpreted different regarding which shell you use. For instance, on my bash, the background is grey with the same pattern as you reported as wrong. I was able to fix that banner by throwing out the explicit set of the background color (remove all ;40 from the file). That should be more consistent anyway, since there were already transparent parts.