You are correct that the body stylesheet should just work. However, if there is a style deeper down in the hierarchy that contradicts the body's text-align, then the deeper attribute takes precedence. This is undoubtedly what's happening, as left justified is the default, so you shouldn't need the body style anyway.
Post your code if you can't find the problematic style / html.