From what I can tell, the grid screen is a combination of the video layer (for the posters), and the graphics layer (for the overhang, selection frame, and description bubble). The video portion doesn't fill the screen, but rather is framed by the graphics layer. Depending on the grayscale value you choose for the background, that graphic frame is more distinguishable during overlays (message dialogs, etc). If you set the grid background to a color, instead of grayscale, the framing is very obvious. This appears to be a function of the color interpretation by the video layer being slightly different than the graphics layer. The framing is actually within the overscan area of the screen, so it should really only be visible, if you've got overscan disabled on your display. That being said, I've never seen as dramatic a difference as you're describing, so it sounds like you may be doing something funky in your code...
Are you closing your grid screen before displaying the screen for the selected item? If so, the flicker you're seeing may be the delay between the close of the grid and the open of the new window. First, with the latest firmware, you should no longer need to close the grid screen, so that may be the easiest fix. If you need to close the grid screen, then you should do so after you've either displayed the new screen, or you've stacked another facade/loading screen on top of it, so there's no visible delay between the close and open of the new screen.
If you're displaying a "Please Wait" dialog during that period, try setting the EnableOverlay setting to True, and see if that makes a difference.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)