What am I doing wrong? Logisim problem
For one thing, you can't just use an OR port to subtract 8. The output of the OR port will always be 1, because one of its inputs is always 1. You're effectively ignoring the 4th bit of the multiplication and always put a 1 instead.

Besides that, if you are allowed to use an 6+ bit full adder that would simplify things of course. If I'm not mistaken, logisim also has a subtractor symbol that you could use for the -8 part. If you're not allowed to use these fancy components, you'll have to do something clever (for example, build them yourself - but there's an easier method).

Lastly, you mention you have to perform the operation in 4-bit arithmetic. By that, do you mean that inputs and outputs should have four bits, or only the inputs? Because if the first,  you're calculating too much here; you have seven output bits.