Cloud computing is more based on IAAS (I)nfrastructure (A)s (A) Service with the underlying virtualization technologies abstracted to the point where the end user does not notice them.
IAAS may, or may not implement everything that you'd find in SOA. It may, for instance expect the deployed applications to handle their own interconnect needs. IAAS cares only that global quotas are enforced and that hardware remains available and accurately metered (a lot like electricity is metered).
So, cloud computing is more or less a marketing buzzword for IAAS.
A wise person once said, "If you can't explain what something is or does in one or two sentences, you have a problem" , this illustrates the point that nobody (including IBM) has come up with a suitable definition for 'cloud computing' that differs noticeably from what IAAS implies.
Meanwhile, feel free to profit from the ambiguity while you still can :)