You’re on the right track, at least if you are talking about the reports for the RoleTailored client (always write what version your questions are about - otherwise the people to answer will not know [:)]). Here you can define a variable which is used as a condition in the HIDDEN property.
As for the classic reports, then you can not program this. But there are two options to archive it anyway.
Either in the way it’s done for the standard invoice report (no. 206). Here you have the logo define three times in the report, but only displayed once. This is done by only “calculating” the image value (stored in a BLOB field for the control you actually are using).
The other option is to define two different report sections containing the image and only displaying the one you want (by using SHOWOUTPUT(Condition) in the OnPreSection trigger of the section).