I've come across a similar situation before, where the image src is as expected but the image is not displayed on the page.
You can check if the image is displayed or not by using the interface, JavaScriptExcecutor.
You can use this code to Pass the image (WebElement)-
Object result = ((JavascriptExecutor) driver).executeScript(
"return arguments[0].complete && "+
"typeof arguments[0].naturalWidth != \"undefined\" && "+
"arguments[0].naturalWidth > 0", image);
boolean loaded = false;
if (result instanceof Boolean) {
loaded = (Boolean) result;
System.out.println(loaded);
}
You can actually verify if the image is loaded on the webpage.
Hope this helps:)