Newcastle were punished for a series of missed chances as Manchester United-loanee Marcus Rashford scored his first goals in Barcelona colours to secure a 2-1 win at St James' Park.