The two pages (new2.htm and wrong.htm) appear to have the exact same code to me.
Anyway -- the border is black and should be red, right? It's not a class/ID problem, because I don't see you using classes or IDs anywhere -- the code I'm seeing is declaring the CSS right in the HTML tags, like:
><td width="50%" bgcolor="#FF0000" style="border-style: solid; border-width: 3px; padding-left: 4px; padding-right: 4px" bordercolor="#FF0000" valign="top">
The problem here is that you're using a combination of old HTML (width="", "bgcolor="", bordercolor="", and valign="") and CSS style declarations (everything else). And you're missing a semi-colon in the style declaration; there should be one at the very end, for padding-right:
Adding the semi-colon might be enough to fix your problems, but if it isn't, try changing everythign to a CSS style declaration rather than using the HTML, like:
><td style="width: 50%; background: #f00; border: 3px solid #f00; padding-left: 4px; padding-right: 4px; vertical-align: top;">
Using CSS classes and IDs is a whole different story, and you'd need to set up an external style sheet (linked in the page header) or else include all the style information at the top of your HTML page (rather than in each tag, which is where you have it now). But I don't know if you want to get into that or if you're just trying to get what you have working?
Edited to add:
Semi-colons are tricky, so don't feel bad about missing one; it happens to me all the time. Also, when you're first getting the hang of CSS, it does take time to figure out how to change all the old, familiar HTML codes into the CSS syntax, so if something I'm saying here isn't clear, just let me know and I'll try to be more clear.