go from this to in PS6 (i know... it's severely outdated...)
start with this image (or any image you want to really...). crop it down to a nice 100x100 square and sharpen and all that jazz.
now paste this gradient/texture by someone else, i can't remember who, into a new layer and set to OVERLAY at 100%.
in another new layer paste this light texture by kenaree, flip it horizontally and set to OVERLAY at 55%.
take this last texture by asya_17 and set it to COLOR BURN at 100%.
in a new layer, take this lovely text brush by somebody else and apply it in #366C7F. erase the heart and set the layer to MULTIPLY at 100%.
in another new layer re-apply the text brush, this time in #E63E3E, but erase everything but the heart and set the layer to OVERLAY at 100%.
as you can see, the heart is barely visible, so i merely duplicated the heart layer and left on OVERLAY and changed the opacity to 47%.
and voila! you have a lovely icon. not so hard, eh?