Finally I found what I was doing wrong. I used padding inner on tiles to show the gap between them. Instead we should use ‘stroke’ attribute to show outline around tile. Also remove the round(true) which causes issue while calculating the area of tile.
It took so much time but glad its resolved now.