How do you verify a block manually?
That isn't the way a block header is created. The block header is constructed as 


the version
the hash of the previous block
the merkle root
the timestamp
the nBits field
and the nonce.


Once serialized in bytes, the header is hashed twice with SHA256 not just once.

A common mistake is to hash the string of hex representation of the bytes, you must hash the bytes themselves.

See here for more info: https://en.bitcoin.it/wiki/Block_hashing_algorithm

The hash is the hash of that block. It does not give the hash of the next block following it, there is no way to know what the next block hash will be and there are many possible hashes it could be.