If you despise the report designer as much as I do you could even take it a step further by returning the colour codes/names by the stored proc. This way you avoid those nasty IIF statements, and the logic is kept in one place:
CASE
WHEN SP.Bonus = @Topseller THEN '#0000FF' --Blue
WHEN SP.Bonus = @Bottomseller THEN '#FF0000' --Red
ELSE '#000000' --Black
END AS TopBottomSellerColour
...or:
CASE
WHEN SP.Bonus = @Topseller THEN 'Blue'
WHEN SP.Bonus = @Bottomseller THEN 'Red'
ELSE 'Black'
END AS TopBottomSellerColour
The 'Colour' property of the textbox could then simply be set to:
=Fields!TopBottomSellerColour.Value
Chris